Заработало, благодарю. Теперь осталось разобраться как таким же образом записывать данные в определенные строки, не порекомендуете подходящею документацию ? --- Добавлено --- Спасибо все заработало. Я как можно заметить плохо разбираюсь в php поэтому работаю по документации. Теперь осталось разобраться как таким же образом записывать в определенные ячейки данные, не порекомендуете документацию ?
- mysql update - php подготовленные (подготавливаемые) запросы. --- Добавлено --- Небольшие порции данных можно писать и обычными запросами, предварительно провалидировав и/или проэкранировав данные.
Вот я нашёл пример, я правильно понимаю id это id пользователя у которого измениться имя на Doe $sql = "UPDATE MyGuests SET lastname='Doe' WHERE id=2"; if ($conn->query($sql) === TRUE) { echo"Record updated successfully"; } else { echo"Error updating record: " . $conn->error; } $conn->close();
А как правильно заменить имя Doe на интересующие меня так же запросом через post ? --- Добавлено --- Я хоть в правильном направление двигаюсь ? $id = 0; if(isset($_POST['id'])) { $id = (int)$_POST['id']; //только для полей с числовыми значениями, для строк по-другому } $sql = "UPDATE MyGuests SET lastname='Doe' WHERE id=$id "; if ($conn->query($sql)) { echo "Record updated successfully"; } else { echo "Error updating record: " . $conn->error; } $conn->close();
Yes. И нефиг спрашивать такие элементарные вещи. Возьми, да проверь. Можно в той же phpMyAdmin для наглядности. --- Добавлено --- Так ХЗ, куда вы двигаетесь --- Добавлено --- Тема про другое
А как правильно заменить имя Doe на интересующие меня так же запросом через post ? через bind_param или можно как то еще?
Вообще существование записи можно проверять предварительным SELECT'ом по id (классика – это брать id из адреса, например из GET-параметра, но в общем-то можно и из POST-параметра). А имя записываете тоже через переменную с учетом того, что я выше написал (подготовленные запросы, валидация, экранирование). --- Добавлено --- Проверку ошибки после UPDATE'а в любом случае оставляете! А предварительный SELECT нужен на предмет выдачи 404-ой.
Ну тут просто такое дело если я правильно понял. Это код не для сайта а для приложения поэтому все работает через POST запросы.
И я вам писал про GET-параметр POST-запроса Странно, но реально --- Добавлено --- Можно делать, как я показывал, т.е. передавать id прямо в пути: /users/1 --- Добавлено --- GET /users/1 – получить данные пользователя для формы и т.п. POST /users/1 – обновить данные пользователя. --- Добавлено --- Для «приложений» можно использовать и расширенный набор методов, например еще PUT и PATCH POST в этом случае обычно используется для создания новой записи, а не для обновления.
Получилось но как видно не полностью $login = $_POST['user_email']; может принять и изменить только цифровые значения как сделать так что бы можно было вписывать буквы а не только цифры? $login = $_POST['user_email']; $id = 0; if(isset($_POST['id'])) { $id = (int)$_POST['id']; //только для полей с числовыми значениями, для строк по-другому } $sql = "UPDATE `pff08_users` SET display_name=$login WHERE ID=$id "; if ($conn->query($sql)) { echo "Record updated successfully"; } else { echo "Error updating record: " . $conn->error; } $conn->close();
Задача всех этих манипуляций с приведением типа полученной строки к типу INTEGER - исключить внедрение в SQL зловредного содержимого. Без понимания для чего это нужно и как работает, переходить к передаче строковых значений из пользовательского ввода в базу рано. Почитать можно по ссылке https://www.php.net/manual/ru/security.database.php Там есть и примеры.
Спокойствие. Рождается новый б/кодер А чего вы, собственно, хотели? --- Добавлено --- По-моему, все было сразу понятно.