Параметрированный запрос И проверка ввода - это путь. Существует множество сценариев, в которых может произойти SQL-инъекция, хотя используется mysql_real_escape_string()
.
Эти примеры уязвимы для SQL-инъекции:
$offset = isset($_GET['o']) ? $_GET['o'] : 0;
$offset = mysql_real_escape_string($offset);
RunQuery("SELECT userid, username FROM sql_injection_test LIMIT $offset, 10");
или
$order = isset($_GET['o']) ? $_GET['o'] : 'userid';
$order = mysql_real_escape_string($order);
RunQuery("SELECT userid, username FROM sql_injection_test ORDER BY `$order`");
В обоих случаях вы не можете использовать '
для защиты инкапсуляции.
Источник : Непредвиденная инъекция SQL (при эвакуации Недостаточно)
Не знайте, представляет ли Google его как API, но это смотрит много как то, что Вы хотите. http://www.google.com/movies?hl=en&near=90210&dq=movie+times+90210&sa=X&oi=showtimes&ct=title&cd=1
извините, должен был искать немного больше прежде, чем отправить вопрос.
[приблизительно 110] творческий поиск на del.icio.us показал недокументированный API фильмов Yahoo! ( демонстрационный вызов API ).
хорошие взгляды.
Мое предположение - то, что Ваш лучший выбор на том (если у этих парней нет каналов RSS) состоял бы в том, чтобы очистить HTML с языком, который поддерживает регулярные выражения.
Мышление Вы, это ужасно и каждый раз, когда они изменяют свой код, Ваш повреждение-could-.
Я не могу найти тот.
Вы могли попробовать анализ экранных данных из Фильмов Yahoo: http://movies.yahoo.com/showtimes/movie?z=60630&date=20090113&mid=1810038822
z = zip code
date = year + month + day (as a string)
mid = movieID, which you will have to grab from Yahoo Movies
Немного осмотревшись, я обнаружил, что Dapper (open.dapper.net) - отличное решение для создания этого типа канала ...
Вот канал, который я сделал , который принимает в качестве параметров название фильма и почтовый индекс. (большинство других доступны только с поиском по ZIP)
http://www.dapper.net/dapp-howto-use.php?dappName=GoogleMoviesbynameANDzip
настройка заняла около 5 минут ...
Да, Yahoo очевидно удалила свой секретный API фильмов в ноябре 2009 года.
Кажется, каждый получает свои данные из TMS Data Direct: http://www.tmsdatadirect.com/
Я тоже ищу шоу, которые я могу законно соскребать и переиздать. Yahoo's звучит так, будто если вы не делаете это в коммерческих целях, это не запрещено... или, может быть, это желание с моей стороны.
Вы соглашаетесь не воспроизводить, не дублировать, копировать, продавать, торговать, перепродавать или эксплуатировать для любых коммерческих целей , любых часть или использование, или доступ к Yahoo! Services
Я также искал API Showtime, и, как вы, я не нашел хорошего API для фильма Showtimes. Я решил написать свой собственный «Showtime API», основываясь на Google Showtimes. Пожалуйста, проверьте это.
Это простой PHP-скрипт, но «это делает то, что он должен делать»:
<?php
/**
* Google Showtime grabber
*
* This file will grab the last showtimes of theatres nearby your zipcode.
* Please make the URL your own! You can also add parameters to this URL:
* &date=0|1|2|3 => today|1 day|2 days|etc..
*
* Please download the latest version of simple_html_dom.php on sourceForge:
* http://sourceforge.net/projects/simplehtmldom/files/
*
* @author Bas van Dorst <info@basvandorst.nl>
* @version 0.1
* @package GoogleShowtime
*/
require_once('simple_html_dom.phps');
$html = new simple_html_dom();
$html->load_file('http://www.google.nl/movies?mid=&hl=en&near=1400AB');
print '<pre>';
foreach($html->find('#movie_results .theater') as $div) {
// print theater and address info
print "Theate: ".$div->find('h2 a',0)->innertext."\n";
print "Address: ". $div->find('.info',0)->innertext."\n";
// print all the movies with showtimes
foreach($div->find('.movie') as $movie) {
print "\tMovie: ".$movie->find('.name a',0)->innertext.'<br />';
print "\tTime: ".$movie->find('.times',0)->innertext.'<br />';
}
print "\n\n";
}
// clean up memory
$html->clear();
?>
Пример: http: // code.basvd.nl/showtime_grabber_0.1/google_showtime.php
Download Simple_html_dom.php: http: // code.basvd.nl/showtime_grabber_0.1/