MySQL - تم إضافة أحرف مربعة مضحكة إلى القيمة عند إدخالها في الجدول

StackOverflow https://stackoverflow.com/questions/2829626

  •  26-09-2019
  •  | 
  •  

سؤال

لديّ برنامج نصي PHP يقوم بإدراج القيم في جدول MySQL

INSERT INTO stories (title) VALUES('$_REQUEST[title]);

لقد راجعت قيم متغيرات طلبي قبل الذهاب إلى الطاولة وهو جيد.

ولكن عندما أضيف العنوان = جون إلى الطاولة على سبيل المثال ،

أحصل على شيء مثل هذا:title = "[][][][]john"وعندما أقوم باستخراج القيمة ، فهو خط جديد ثم جون.

لديّ أعمالي تم تعيينها على UTF-8 ، لقد جربت أيضًا الأحرف السويدية.

ملاحظة: لا أحصل على هذا الخطأ عند إدخال القيم من سطر الأوامر phpmyadmin

هل كانت مفيدة؟

المحلول

انت تحتاج {} حول أي تدوين صفيف عند استخدامه في الداخل "".

$q="INSERT INTO stories(title) VALUES('{$_REQUEST['title']}')";

راجع للشغل ، سيكون من الأفضل ، عند التحقق real_escape_string()

نصائح أخرى

SET NAMES <encoding> يجب تنفيذ الاستعلام في كل مرة تتصل فيها بقاعدة البيانات الخاصة بك.
قاعدة بسيطة جدا.

أين <encoding> هل تشفر صفحة HTML الخاصة بك في لهجة MySQL (utf8 لـ UTF-8)

تحتاج إلى التحقق من مجموعة الأحرف من قاعدة البيانات والخادم والعميل.

لاحظ أنها ليست مجموعة شخصية سويدية ، إنها جمع سويدي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top