У меня есть таблица базы данных - серийный (первичный ключ автоинкремента), версия и turk_number. Я использую следующий код для вставки новой строки. Я получаю эти переменные через $ _GET, и я сделал распечатку, поэтому я знаю, что переменные доступны, поэтому я не уверен, что случилось. Загружаются серийный номер и версия, но не turk_number.php - не загружать переменную в базу данных
$turk_number ='';
$serial='';
$version='';
if(isset($_GET['serial']))
{
$serial=$_GET['serial'];
$_SESSION['serial'] = $serial;
}
if(isset($_GET['version']))
{
$version = $_GET['version'];
$_SESSION['version'] = $version;
print "version=" . $version;
}
if(isset($_GET['turk_number']))
{
$turk_number= $_GET['turk_number'];
$_SESSION['turk_number'] = $turk_number;
print "turk number=".$turk_number;
}
//this assigns a participant a unique serial id at the beginning of the game
$hostname = "localhost";
$username = "root";
$password = "";
$dbname = "resolver";
try
{
print 'turk2=' . $turk_number;
$dbh = new PDO("mysql:host=$hostname;dbname=$dbname", $username, $password);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$query2 = "INSERT INTO participants (version, turk_number) VALUES (:version, :turk_number)";
$stmt = $dbh ->prepare($query2);
$stmt ->execute(array(':version' => $version,
':turk_number' => $turk_number));
}
catch(PDOException $e)
{
echo $e->getMessage();
}
Что * * является неправильным? Вы получаете сообщение об ошибке? –
Нет ошибки, просто получив 0 в столбце turk_number в таблице – user1015214
Что такое 'print 'turk number =". $ Turk_number; 'дает вам тогда? –