PDA

View Full Version : سوال: عدم ثبت اطلاعات در دیتابیس با PDO



hamidhassas
یک شنبه 08 شهریور 1394, 12:08 عصر
من اطلاعات رو با اسکریپت CKEditor ویرایش و با PDO در دیتابیس زخیره میکنم اما فقط متن ها در دیتابیس زخیره میشه و در تگ های HTML هرجا " هست تبدیل به " میشه
این کد من



try
{
$stmt = $database_connect->prepare("INSERT INTO `service`(name, details, url_image) VALUES (:service, :details, :url_image)");
$stmt->bindParam(':service', $_POST['name'], PDO::PARAM_STR, 100);
$stmt->bindParam(':details', $_POST['details'], PDO::PARAM_STR, 100);
$stmt->bindParam(':url_image', $_POST['url_image'], PDO::PARAM_STR);
if($stmt->execute()) { echo '<center><h2 style="color:green">خدمات جدید اضافه گردید</h2></center>'; }
$database_connect = null;
}
catch(PDOException $e)
{
trigger_error('Error occured while trying to insert into the DB:' . $e->getMessage(), E_USER_ERROR);
}

rasoul_par
یک شنبه 08 شهریور 1394, 12:17 عصر
چون داری از تابع strip_tags استفاده میکنی!
آرگومان دوم این تابع تگ های مجاز رو مشخص میکنه که شما مشخص نکردی!
مطابق اون چیزی که توی خود (http://php.net/manual/en/function.strip-tags.php)سایت php گفته این تابع امن نیست!

hamidhassas
یک شنبه 08 شهریور 1394, 15:36 عصر
نه مشکلم سر قسمت$_POST['details'] هست

hamidhassas
سه شنبه 10 شهریور 1394, 12:35 عصر
تمام کارکتر های زیر که توسط CKeditor ایجاد میش در PDO به معادلشون تغیر میکنن میهوام بدونم راهی نیست این مشکل برطرف بشه


'&' (ampersand) becomes '&amp;'

'"' (double quote) becomes '&quot;

"'" (single quote) becomes '&#039;

Mohammadsgh
سه شنبه 10 شهریور 1394, 14:25 عصر
از ajax استفاده میکنید؟

hamidhassas
سه شنبه 10 شهریور 1394, 15:09 عصر
از ajax استفاده میکنید؟

خیر اطلاعات رو از یک صفحه به یک صفحه دیگه میفرستم و صفحه ریفرش میشه و بر میگرده به صفحه اول

hamid_computer3
شنبه 14 شهریور 1394, 15:51 عصر
منم همین مشکل رو داشتم بخاطر همین مجبور شدم از mysqli استفاده کنم