Visual Studio 2015 — PHP INSERT не удается обновить данные в таблице

Кажется, что нет никакой синтаксической ошибки, поскольку запрос выбора работает. Тем не менее, когда я пытаюсь вставить значения, он не обновляется в моей таблице. Кажется, в коде нет ошибок. Похоже, запрос работает нормально в VS.
Я проверил сообщения с таким же названием и попытался применить к своему коду ни один из них до сих пор не работал. Вот мой код, где я впервые столкнулся с проблемой.
Мой вопрос, как я могу исправить это и обновить таблицу в моей базе данных? Любая помощь будет оценена, спасибо за чтение

$ServerName = 'SQL2008.net.dcs.hull.ac.uk';
$connectionInfo = array("Database"=>"rde_505405");
$conn = sqlsrv_connect($ServerName,$connectionInfo);
if($conn== false)
{
echo 'Connection could not be established';
exit('Disconnecting');
}
else
{
echo 'Database located!';
echo '</br>';
$StaffNUM = $_POST["SID"];
$FirstName = $_POST['Fname'];
$Surname = $_POST['Sname'];
$Location = $_POST['Location'];
$Date = date('Y-m-d h:i:sa');

echo 'First Name: ', $FirstName; Echo'</br>,</br>';
echo 'Surname: ', $Surname; Echo'</br>,</br>';
echo 'Location: ', $Location;  Echo'</br>,</br>';
echo 'Entered at: ', $Date;  Echo'</br>,</br>';

$SQLquery = ("INSERT INTO Location (STAFFID, 'First Name', Surname,
Location, Time)
VALUES ('".$StaffNUM."''".$FirstName."', '".$Surname."',
'".$Location."', '".$Date."');");
$results = sqlsrv_query($conn, $SQLquery);
echo '<br>';
echo '<br>';
echo 'Entry added successfully';
}
sqlsrv_close($conn);

-2

Решение

Вам не хватает запятой между $StaffNUM а также $FirstName

Пожалуйста, измените код для запроса SQL как:

$SQLquery = ("INSERT INTO Location (STAFFID, First Name, Surname, Location, Time) VALUES ('$StaffNUM', '$FirstName', '$Surname', '$Location', '$Date')");

это должно работать 🙂

0

Другие решения

В конце концов я выяснил, что не так, мое решение заключалось в том, чтобы жестко закодировать запрос на VS, который выделил ошибки.
Например, я понял, что эта колонка First Name было плохое имя из-за пробела и убрал место, чтобы сделать его FirstName,
Я также изменил коррекцию @ Thaiseer, добавив » к каждой переменной.
И, наконец, мой тип таблицы был установлен на datetime позволяя мне использовать функцию GETDATE()

Модифицированный код

$SQLquery = "INSERT INTO Location (STAFFID, FirstName, Surname, Location, Time)
VALUES ('$StaffNUM','$FirstName', '$Surname', '$Location', GETDATE())";

Надеюсь, это поможет другим, кто оказался в подобной ситуации.

0

заключите поля в «, а также не используйте зарезервированные слова в качестве поля данных,

$SQLquery = ("INSERT INTO Location (`STAFFID`, `First Name`, `Surname`, `Location`, `Time`)
VALUES ('$StaffNUM', '$FirstName', '$Surname', '$Location', '$Date')");
0
По вопросам рекламы [email protected]