Довгий текст не буде оновлено

Я намагаюсь оновити довге текстове поле mysql. Раніше вона працювала без будь-яких проблем, але зараз вона не оновиться. Ось код

$productTitle = $_POST['product_title'];
$productDesc = $_POST['product_desc'];

$updateProductDesc = "UPDATE product_desc SET product_desc='$productDesc' 
WHERE product_sku='$productSku' ";
mysql_query($updateProductDesc, $db_custom);

Я знаю, що я повинен використовувати mysqli, але крім того, що весь синтаксис правильний. Або я нічого не пропускаю.

0
Не буде оновлюватися означає? використовуйте mysql_error() для налагодження помилки. Я думаю, це може бути однією комою, що створює проблему. Використовуйте mysql_escape_string , щоб уникнути їх.
додано Автор Yogesh Suthar, джерело
Чи правильно ім'я таблиці product_desc ?
додано Автор karthikr, джерело
це було тому, що в тексті вставили апостроф.
додано Автор Shade, джерело
Я сподіваюсь, що цей звіт про помилку може бути корисним bugs.mysql.com/bug.php?id = 12157
додано Автор user2332130, джерело

6 Відповіді

багато причин ваш код не буде працювати:

Крок 1

Змінити

$productDesc = $_POST['product_desc'];

Into

$productDesc = addslashes($_POST['product_desc']);

Крок 2

Before update, add mysql_real_escape_string($productDesc);

Перевірте свою базу даних і введіть тип product_desc в TEXT

Крок 3

Перевірте, чи є життєздатним product_sku = '$ productSku' .

Додатковий крок

mysql_query() амортизується. Перейти на mysqli

1
додано
Це чудово працювало! Спасибі це було через апострофи (і) та інших особливих персонажів
додано Автор Shade, джерело

багато причин ваш код не буде працювати:

Крок 1

Змінити

$productDesc = $_POST['product_desc'];

Into

$productDesc = addslashes($_POST['product_desc']);

Крок 2

Before update, add mysql_real_escape_string($productDesc);

Перевірте свою базу даних і введіть тип product_desc в TEXT

Крок 3

Перевірте, чи є життєздатним product_sku = '$ productSku' .

Додатковий крок

mysql_query() амортизується. Перейти на mysqli

1
додано
Це чудово працювало! Спасибі це було через апострофи (і) та інших особливих персонажів
додано Автор Shade, джерело

багато причин ваш код не буде працювати:

Крок 1

Змінити

$productDesc = $_POST['product_desc'];

Into

$productDesc = addslashes($_POST['product_desc']);

Крок 2

Before update, add mysql_real_escape_string($productDesc);

Перевірте свою базу даних і введіть тип product_desc в TEXT

Крок 3

Перевірте, чи є життєздатним product_sku = '$ productSku' .

Додатковий крок

mysql_query() амортизується. Перейти на mysqli

1
додано
Це чудово працювало! Спасибі це було через апострофи (і) та інших особливих персонажів
додано Автор Shade, джерело

Якщо все було набагато раніше, шанси полягати в тому, що ваше поле опису має деякий характер. Йоге Сутар правильно, що ви повинні перевірити помилку. Спробуй уникнути значення за допомогою mysql_escape_string ()

0
додано

Якщо все було набагато раніше, шанси полягати в тому, що ваше поле опису має деякий характер. Йоге Сутар правильно, що ви повинні перевірити помилку. Спробуй уникнути значення за допомогою mysql_escape_string ()

0
додано

Якщо все було набагато раніше, шанси полягати в тому, що ваше поле опису має деякий характер. Йоге Сутар правильно, що ви повинні перевірити помилку. Спробуй уникнути значення за допомогою mysql_escape_string ()

0
додано
Ukrainian PHP comunity
Ukrainian PHP comunity
885 учасників

dev-ua/php