2017-01-24 5 views
-3

Я создаю сайт, и я хочу вставить данные в таблицу phpmyadmin из формы (method = "post"), она не работала, я подключен к базе данных, но когда i тип вещи в моей форме он не вставлен в таблице, вот моя PHP часть:Вставка данных в базу данных php

<?php 
$hostname = 'localhost'; 
$username = 'root'; 
$password = ''; 
try { 
    $conn = new PDO("mysql:host=$hostname;dbname=Database", $username, $password); 
    echo 'Connected to database'; 
} 
catch(PDOException $e) 
{  
    echo $e->getMessage(); 
} 
$nom = $_POST['nom']; 
$prenom =$_POST['prenom']; 
$email = $_POST['email']; 
$password = $_POST['password']; 
$type = $_POST['type']; 
$sql = "INSERT INTO client (nom, prenom, email,password,type) 
        VALUES ($nom, $prenom, $email, $password , $type)"; 
} 
$conn->connection = null; 
?> 
+0

Вы пропущенные котировки вокруг ваших значений, но еще лучше использовать подготовленные инструкции. Также вы не используете этот запрос где-нибудь – Mihai

+0

, где вы узнали об этом? Нет никакой пинты использования PDO, если вы не собираетесь использовать подготовленные заявления. –

+0

Кроме того, запись запроса в текстовом литерале не передает его в базу данных для выполнения. [RTM] (http://php.net/manual/en/book.pdo.php) – RiggsFolly

ответ

1

Я не собирается комментарий много, есть еще много обучения и практики, что вам нужно сделать. Пожалуйста, обратите ваше время и пройти через этот блог, читать и практиковать с ним, не спешите принимать ваше время https://phpdelusions.net/pdo

Ваш код должен искать аналогичный приведенному ниже:

<?php 
$hostname = 'localhost'; 
$username = 'root'; 
$password = ''; 
try { 
    $conn = new PDO("mysql:host=$hostname;dbname=Database", $username, $password); 
    $conn->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION); 

} 
catch (PDOException $e) { 

    echo $e->getMessage(); 

} 


$nom  = $_POST['nom']; 
$prenom = $_POST['prenom']; 
$email = $_POST['email']; 
$password = $_POST['password']; 
$type  = $_POST['type']; 


try { 

    $sql = "INSERT INTO client (nom, prenom, email,password,type) VALUES (?,?,?,?,?)"; 

    $stmt = $conn->prepare($sql); 
    if ($stmt->execute(array(
     $nom, 
     $prenom, 
     $email, 
     $password, 
     $type 
    ))) { 

     echo "Data inserted"; 
    } else { 

     echo "could not insert"; 
    } 

} 
catch (Exception $ex) { 

    error_log($ex->getMessage()); 

} 


?> 
+0

sh! T !! yhea u напишите, я спешил, исправлю tht спасибо –

Смежные вопросы