Здравствуйте, я написал код для вставки данных из формы в базу данных MySQL:вставки данных из формы в мою SQL Databse с PHP
$conn = new PDO("mysql:dbname=data12;host=$servername", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$ul = $_POST['fname'];
$sql="insert into t22 values('16',".$ul.")";
Записи добавляются, но это значение пусто. Я также пробовал другой синтаксис, как:
$sql="insert into t22 values('16',$ul)";
$sql="insert into t22 values('16','".$ul."')";
$sql="insert into t22 values('16',$ul)";
пожалуйста, помогите мне об этом.
Что содержит '$ _POST ['fname']'? Покажите свою форму HTML. – Qirel
Также ... вы нашли PDO, но не подготовили запросы? Шутки в сторону? Правильным использованием будет '$ sql-> prepare (" INSERT INTO t22 VALUES (?,?)) ";' И '$ sql-> execute (['16', $ _ POST ['fname']]);' – junkfoodjunkie
Я также добавил $ stmt = $ conn-> prepare ("INSERT INTO t22 VALUES ('10',: fname)"); и интересно, что если я использую: $ u = 'testtt'; $ stmt-> bindparam (': fname', $ u); он будет работать, но когда я использую $ u = $ _POST ['fname']; вместо $ u = 'testtt'; это не будет работать. Я повторяю также команду $ u after post, и она имеет значение, но значение не будет зависеть от базы данных. – hosseinpink