View Full Version : سوال: دستور PDO
irwebir
جمعه 19 دی 1393, 16:22 عصر
سلام دوستان قبلا من برای ساخت تبل های دیتایس از این کد استفاده میکردم
<?php
$connect = mysql_connect ("Localhost","root","")
or die(mysql_error());
mysql_select_db ('SS' , $connect);
mysql_query("CREATE TABLE ??(
id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
?? VARCHAR(255),
?? VARCHAR(255)
)
ENGINE=MyISAM ")
or die(mysql_error());
mysql_close($connect);
?>
الان دیگه این کدا از کار افتاده الان میخوام بدونم با استفاده از PDO که الان کاربرد داره چطوری کار کد بالا رو بکنم ؟
ostadsho
جمعه 19 دی 1393, 23:05 عصر
مرحله اول وصل شدن به دیتابیس که با pdo این شکلیه:
try{
$db=new PDO('mysql:host=localhost;dbname=db_eshop','root', '',array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
}
catch(PDOException $error){
echo "Connection failed: " . $error->getMessage();
}
مرحله دوم اجرای کوئری مورد نظرتونه که یه مثال رو فقط میگم فرض کنید میخواید توی جدولی به نام tbltest یه سری مقادیر رو insert کنید:
$sql="insert into tbltest (fieldname) values ('$value')";
$stmt=$db->prepare($sql);
$stmt->execute();
irwebir
یک شنبه 21 دی 1393, 15:53 عصر
نخواستم یه تایپک دیگه بزنم همین جا میگم
من برای ذخیره ی اطلاعات مشکل دارم از کد زیر برای ذخیره استفاده میکنم اما کار نمیکنه
$sql = "INSERT INTO post (post, taitall) VALUES (:user, :pass)";
$stmt = $db->prepare($sql);
$stmt->execute(array(
":user"=>$user,
":pass"=>$pass
));
?>
به نظرم کد مشکلی نداره اما اطلاعاتی ذخیره نمیشه مشکل از کجاست ؟
hsgpro
یک شنبه 21 دی 1393, 19:28 عصر
نخواستم یه تایپک دیگه بزنم همین جا میگم
من برای ذخیره ی اطلاعات مشکل دارم از کد زیر برای ذخیره استفاده میکنم اما کار نمیکنه
$sql = "INSERT INTO post (post, taitall) VALUES (:user, :pass)";
$stmt = $db->prepare($sql);
$stmt->execute(array(
":user"=>$user,
":pass"=>$pass
));
?>
به نظرم کد مشکلی نداره اما اطلاعاتی ذخیره نمیشه مشکل از کجاست ؟
اینو امتحان کنید:
<?php
$stmt = $db->prepare('INSERT INTO `post` (`post`, `taitall`) VALUES (:user, :pass)');
$stmt->execute(array(
":user"=>$user,
":pass"=>$pass
));
?>
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.