#javascript #php #jquery
Вопрос:
Я не могу вставить в БД данные из формы HTML-кода. Когда вы отправляете форму, она не работает.
Приведенный ниже код представляет источник проблемы.
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
include '_dbconnect.php';
$User_id = (isset($_POST['User_id']) ? $_POST['User_id'] : '');
$asset_id = (isset($_POST['asset_id']) ? $_POST['asset_id'] : '');
$issued_asset = (isset($_POST['issued_on']) ? $_POST['issued_on'] : '');
$sql = "INSERT INTO `userasset` (`User_id`,`asset_id`, `issued_on`) VALUES (:User_id,:asset_id,:issued_on); ";
$stmt = $pdo->prepare($sql);
$pdoQuery_run = $stmt->execute(array(':User_id' => $User_id, `:asset_id` => $asset_id, `:issued_on` => $issued_on));
$smt = $pdo->prepare('SELECT User_id From userasset');
$smt->execute();
$data = $smt->fetchAll();
$smt1 = $pdo->prepare('SELECT asset_id From userasset');
$smt1->execute();
$data1 = $smt1->fetchAll();
}
Комментарии:
1. Есть ли у вас вопрос ?
2. извините, что я новичок во всем этом, я застрял, и появляются ошибки, которые я не могу разрешить. ошибка : Предупреждение: PDOStatement::execute(): SQLSTATE[HY093]: Недопустимый номер параметра: количество связанных переменных не соответствует количеству токенов в C:xampphtdocsbootissueasset.php на линии 181
3. @RipudamanSingh пожалуйста, добавьте свой комментарий под вопросом, который вы задали, нажав кнопку редактирования
4. Пожалуйста, проясните вашу конкретную проблему или предоставьте дополнительные сведения, чтобы точно указать, что вам нужно. Поскольку это написано в настоящее время, трудно точно сказать, о чем вы просите.
Ответ №1:
Вы должны изменить $issued_asset
, на $issued_on
который вы используете after в методе execute.
Воспользуйся $issued_on = (isset($_POST['issued_on']) ? $_POST['issued_on'] : '');
Вместо: $issued_asset = (isset($_POST['issued_on']) ? $_POST['issued_on'] : '');
Потому что после того, как вы используете: $pdoQuery_run = $stmt->execute(array(':User_id' => $User_id, `:asset_id` => $asset_id, `:issued_on` => $issued_on));
Комментарии:
1. привет, он все еще не работает . ошибка : Предупреждение: PDOStatement::execute(): SQLSTATE[HY093]: Недопустимый номер параметра: количество связанных переменных не соответствует количеству токенов в C:xampphtdocsbootissueasset.php на линии 181
2. Пожалуйста, добавьте дополнительные сведения, чтобы расширить свой ответ, например, ссылки на рабочий код или документацию.
3. PDOStatement::выполнить(): SQLSTATE[HY093]: Недопустимый номер параметра в C:xampphtdocsbootissueasset.php на линии 180