Я пробую что-то очень простое, но по какой-то причине это не сработает так, как я ожидал. Для этого я хочу выбрать конкретную c строку и затем присвоить ее другой таблице с помощью обновления.
Вот скрипт, который я хочу запустить:
<?php
$passedID = $_POST["upvotedurl"];
$mysqli = new mysqli('localhost', 'root', '', 'osscom_users_test');
$sqlstm = "SELECT * FROM image_uploads WHERE THMPATH=?";
$fstmt = $mysqli->prepare($sqlstm);
$fstmt->bind_param("s", $passedID);
$fstmt->execute();
$fstmt->store_result();
$json = $fstmt->get_result()->fetch_assoc();
foreach ($json as $value) {
$val1 = $value['THMPATH']; // this is empty, why???
$sql = "UPDATE image_uploads SET IMGNAME=? WHERE THMPATH=?";
$stmt = $mysqli->prepare($sql);
$stmt->bind_param("ss", $val1, $passedID);
$stmt->execute();
$stmt->close();
}
$fstmt->close();
$mysqli->close();
?>
для странного Причина, по которой я не могу объяснить переменную $value
из запроса SELECT
, пуста.
Как вы можете видеть в примере, я получаю THMPATH
, который определенно не пуст, и я также использую то же значение для UPDATE
ниже. Если бы я использовал что-то вроде $val1 = "Wololo"
, это работало бы без проблем.
Почему мой $value
(в данном случае $value['THMPATH']
) пуст? Это не имеет смысла?
Обновление
При запуске file_put_contents('../session/log.txt', print_r($json, true));
это результат:
Array
(
[ID] => 511
[OWNER] => User Name
[IMGNAME] => Wagirigoingi
[IMGTAGS] => image, photo, picture
[IMGPATH] => 1028525690.jpg
[THMPATH] => ../thumbnails/5560921208_username.jpg
etc..
)
Итак, выбор работал, но я все еще не могу получить значения.