У меня есть таблица в моей базе данных MySQL, называемая «дети». В этой таблице находится строка под названием «пожелания» (список элементов списка желаний, разделенных запятыми). Мне нужно обновить этот список, чтобы он удалял только одно значение. то есть список = размер 12 обычных джинсов, доски для серфинга, бейсбольная кепка Red Sox; Я хочу удалить Surfboard.Удалить значения из списка, разделенного запятой из базы данных
Мой запрос прямо сейчас выглядит следующим образом
$select = mysql_query('SELECT * FROM children WHERE caseNumber="'.$caseNum.'" LIMIT 1 ');
$row = mysql_fetch_array($select);
foreach ($wish as $w) {
$allWishes = $row['wishes'];
$newWishes = str_replace($w, '', $allWishes);
$update = mysql_query("UPDATE children SET wishes='$newWishes' WHERE caseNum='".$caseNum."'");
}
Но запрос UPDATE это ничего не удаляется. Как я могу делать то, что мне нужно?
Я думаю, пожелания должны быть его собственный стол и увязаны здесь путем обмена ключа caseNumber. –
Похоже, что отсутствует конкатенация строк, но после сортировки вы оставляете этот запрос открытым для SQL Injection - хакер действительно получит то, что он хочет. – Andrew
@ Daren - это действительно правильный ответ, модель БД неверна и нуждается в исправлении. Жалость upvotes на комментарии не считать – Andrew