我是PDO新来的, 弄得一团乱,
任何人都可以帮忙, 这是我的代码
if(!empty($_POST) && isset($_POST)) {
include ( connection_pdo.php );
$dbh = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
$source_url= mysql_real_escape_string($_POST[ source_url ]);
$class = mysql_real_escape_string($_POST[ class ]);
$year = mysql_real_escape_string($_POST[ year ]);
$date = time();
$ip = $_SERVER[ REMOTE_ADDR ];
$insert = $dbh->prepare("
INSERT IGNORE INTO school_students_images
( folder_name, image_url, source_url, class, year , date , ip )
VALUES (:folder_name, :image_url, :source_url, :class, :year, :date, :ip)
");
$a=0;
while ($a<1000){
$a++;
$insert->execute(array(
folder_name => $name->content, //** geting from other source
image_url => $link[$a], //** geting from other source
source_url => $source_url,
class => $class ,
year => $year ,
date => $date,
ip => $ip
));
}
它不工作得到错误,但如果我用它
$source_url= ($_POST[ source_url ]);
$class = ($_POST[ class ]);
$year = ($_POST[ year ]);
$date = time();
$ip = $_SERVER[ REMOTE_ADDR ];
it is working ... so i am confused is it safe to POST without mysql_real_escape_string into database? (is PDO giving any security by default ?) or i am doing some mistake in this... please help