$update = "INSERT sanjana SET $name ='$usernames'";
это, вероятно, имеется в виде как UPDATE заявления, поэтому для обновления должно быть
$update = "UPDATE sanjana set name = '$usernames'";
Я поставил name
и не $name
из-за ваш второй запрос и не видя $name
определяются в любом месте. Имейте в виду, что это изменит значение в столбце name
каждой строки в таблице sanjana
на значение $ usernames, как правило, утверждение, подобное этому, ограничено conditions, например.WHERE userid = 33
$update1 = "INSERT INTO sanjana (name) VALUES ($usernames)";
для INSERT заявления он должен иметь значение цитируемого так
$update1 = "INSERT INTO sanjana (name) VALUES ('$usernames')";
Будьте осторожен, что этот способ ввода переменных непосредственно в строку запроса делает вас уязвимым для SQL injection, чтобы бороться с этим, пожалуйста, используйте удлинители PDO или mysqli, они оба защитят вас от инъекций, предоставив вам prepared statements; простой старый mysql_ * больше не рекомендуется использовать.
с помощью PDO вы будете использовать подготовленные заявления, как этого
<?php
// we got $usernames from wherever you define it
$pdo = new PDO('mysql:dbname=mydb;host=localhost','username','password');
// to insert
$statement = $pdo->prepare('INSERT INTO `sanjana` (name) VALUES (:name)');
// the following replaces :name with $usernames in a safe manner, defeating sql injection
$statement->bindParam(':name',$usernames);
$statement->execute(); // it is done
// to update
$statement = $pdo->prepare('UPDATE `sanjan` SET `name` = :name');
$statement->bindParam(':name',$usernames);
$statement->execute(); // it is done
так, как вы можете увидеть защиты коды от вредоносного ввода не трудно и даже делают ваши заявления SQL намного легче читать. Вы заметили, что вам больше не нужно было указывать свои значения в инструкции SQL? Подготовленные заявления позаботятся об этом для вас! Еще один способ получить ошибку в коде.
Пожалуйста, прочитайте об этом, это избавит вас от головных болей. PDO даже имеет то преимущество, что он независим от базы данных, что упрощает использование другой базы данных с существующим кодом.
'mysql_ error()' и 'mysql_ errno()' ваши лучшие друзья ... – CodeZombie
Пожалуйста, для вас, перестань использовать функции mysql !!! У вас PDO, MySQLi и много слоев абстракций с ORM, сопоставление объектов и многое другое !!!! Функции mysql отстойны. – Exos