Tôi có một bảng trong cơ sở dữ liệu MySQL của tôi được gọi là 'trẻ em'. Trong bảng đó là một hàng được gọi là 'mong muốn' (một danh sách được phân cách bằng dấu phẩy của các mục trong danh sách yêu thích của trẻ). Tôi cần có thể cập nhật danh sách đó để nó chỉ xóa một giá trị. tức là danh sách = Kích thước 12 quần jean thông thường, ván lướt sóng, mũ bóng chày màu đỏ Sox; Tôi muốn loại bỏ Ván lướt sóng.Xóa các giá trị trong danh sách được phân tách bằng dấu phẩy khỏi cơ sở dữ liệu
truy vấn của tôi ngay bây giờ trông như thế này
$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."'");
}
Nhưng truy vấn UPDATE không loại bỏ bất cứ điều gì. Làm thế nào tôi có thể làm những gì tôi cần?
Tôi nghĩ rằng những lời chúc nên bảng riêng của nó và liên kết trở lại đây bằng cách chia sẻ caseNumber then chốt. –
Có vẻ thiếu một chuỗi nối nhưng một khi được sắp xếp, bạn sẽ để lại truy vấn này mở cho SQL Injection - một hacker sẽ thực sự có được những gì họ muốn. – Andrew
@ Daren - thats thực sự là câu trả lời đúng, mô hình DB là sai và cần sửa chữa. Đáng tiếc, những người bình chọn trên các bình luận không đếm số – Andrew