I ОБНОВЛЕНИЕ одной записи mysql с использованием цикла foreach, который получает имя и значение переменной $ _POST и UPDATES столбца записи в то время, имена переменных $ _POST такие же, как mysql имена столбцовPDO MySQL php foreach loop
Вот код
foreach ($_POST as $key => $value) {
$value = mysqli_real_escape_string($con, $value);
$value = strip_tags($value);
$sql="UPDATE properties SET $key = '$value' WHERE propertyID='$propertyID'";
$query = mysqli_query($con, $sql);
if (mysqli_errno($con)){$error=1;}
}//end foreach loop
unset($value);
unset($key);
Это прекрасно работает
Однако я пытаюсь преобразовать петлю использовать PDO. Я попытался, глядя на предыдущие посты на эту тему, но я до сих пор не в состоянии заставить его работать
Вот код, я пробовал:
foreach ($_POST as $key => $value) {
$value = mysqli_real_escape_string($con, $value);
$value = strip_tags($value);
$sql="UPDATE vendors SET $key = '$value' WHERE vendorID='$vendorID'";
$stmt = $pdo->prepare($sql);
$stmt->bindValue($key, $value); //have also tried bindParam!!
$stmt->execute();
}//end foreach loop
unset($value);
unset($key);
Это работает, но не обновляет любой из колонок, может кто-нибудь поможет пожалуйста?
Thanx
Боб
Есть ли ошибки? Включено ли сообщение об ошибках? – Script47
Действительно ли, вы обновляете одну и ту же таблицу ОДИН КОЛОНК В ВРЕМЯ ДЛЯ МНОЖЕСТВЕННЫХ КОЛОНК. «Вы не можете быть серьезным». Когда вы пересматриваете этот беспорядок, *** старайтесь реорганизовать свою основную концепцию в то же время *** – RiggsFolly
Возможный дубликат [PHP: цикл while не работает после настройки SELECT для предотвращения SQL-инъекций] (http : //stackoverflow.com/questions/30979758/php-while-loop-not-working-after-adjusting-select-for-sql-injection-prevention) –