PDO Insert Into
Résolu
Sinistrus
Messages postés
1010
Date d'inscription
Statut
Membre
Dernière intervention
-
Sinistrus Messages postés 1010 Date d'inscription Statut Membre Dernière intervention -
Sinistrus Messages postés 1010 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous !
Je rencontre sérieusement un problème avec PDO. Je dois reformer toute mon administration.
Il est facile d'afficher les informations de sa base de données, mais les ajouter, éditer, supprimer... c'est autre chose et je n'y arrive pas depuis malgré les tutos que je trouves très mal expliqués. On croirais même que on cherche à fuir le PDO !
Dans ma page config.php j'ai fais ceci :
Dans ma page ajouter.php
Et enfin dans confirmer.php
J'y arrive pas ! Vous pouvez svp me mettre sur la voie ?
Je rencontre sérieusement un problème avec PDO. Je dois reformer toute mon administration.
Il est facile d'afficher les informations de sa base de données, mais les ajouter, éditer, supprimer... c'est autre chose et je n'y arrive pas depuis malgré les tutos que je trouves très mal expliqués. On croirais même que on cherche à fuir le PDO !
Dans ma page config.php j'ai fais ceci :
define("MYSQL_HOST", "mon_host"); define("MYSQL_BASE", "ma_base"); define("MYSQL_USER", "mon_user"); define("MYSQL_PASS", "mon_pass"); // Connexion PDO $pdo = new PDO('mysql:host='.MYSQL_HOST.';dbname='.MYSQL_BASE, MYSQL_USER, MYSQL_PASS); $pdo->exec("SET CHARACTER SET utf8");
Dans ma page ajouter.php
<form action="add_rss.php" method="POST" name="Form"> <input type="hidden" name="action" value="send" /> <input type="hidden" name="access[]" value="home" /> Date : <input name="Date" type="text" id="Date" value="" /> Titre : <input name="Titre" type="text" id="Titre" value="" /> Descriptions : <textarea name="Desc" id="Desc"></textarea> <input type="submit" name="Envoyer" value="Envoyer" /> </form>
Et enfin dans confirmer.php
<?php if(isset($_POST["action"]) && $_POST["action"] == "send"){ if (isset($_POST['Date'])) $Date = mysql_real_escape_string($_POST["Date"]);else $Date = ""; if (isset($_POST['Titre'])) $Titre = mysql_real_escape_string($_POST["Titre"]);else $Titre = ""; if (isset($_POST['Desc'])) $Desc = mysql_real_escape_string($_POST["Desc"]); else $Desc = ""; if(empty($Date)) {$_GET["msg"] = urlencode("Champ Date vide");}else{ if(empty($Titre)) {$_GET["msg"] = urlencode("Champ Titre vide");}else{ if(empty($Desc)) {$_GET["msg"] = urlencode("Champ Desc vide");}else{ $DateReel = date('Y-m-d H:i:s', strtotime($Date)); $MyPDOadd = "INSERT INTO tb_ci_rss (Date, Titre, Descriptions) VALUES (:DateReel, :Titre, :Descriptions)"; if($MyPDOadd ){echo("<div class=\"Message\">Ajouté avec succès.</div>");} else {echo("<div class=\"Erreur\">Erreur</div>");} exit();}}} if (!empty($_GET["msg"])) {$msg = urldecode($_GET["msg"]); $msg = stripslashes($msg); echo("<div class=\"Erreur\">$msg</div>");} }; ?>
J'y arrive pas ! Vous pouvez svp me mettre sur la voie ?
A voir également:
- PDO Insert Into
- Touche insert - Guide
- Disk boot failure insert system disk and press enter - Guide
- Insert boot media in selected boot device and press a key ✓ - Forum Windows 10
- Activer touche insert sur ASUS UX32A - Forum Clavier
- Monitor will go into standby mode traduction français ✓ - Forum Matériel & Système
1 réponse
Je trouve que tout ça est bien compliqué pour juste ajouter qque chose à ta base de donnée via PHP
try
{
$DB= new PDO('mysql:host=localhost;dbname=csws','root','adminroot');
$DB->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $e)
{
echo "Base de données indisponible !!! ";
}
if (isset($_POST['submit']))
{
$Login = htmlentities(trim($_POST['Login'],ENT_QUOTES)); // est identique à la fonction htmlspecialchars(), sauf que tous les caractères qui ont des équivalents en entités HTML sont effectivement traduits.
$Password = htmlentities(trim($_POST['Password'],ENT_QUOTES));// aucun XSS est possible et que votre demande est sécurisé :
$repeatPass = htmlentities(trim($_POST['repeatPass'],ENT_QUOTES));
$date_naissance = htmlentities(trim($_POST['date_naissance'],ENT_QUOTES));
$Mail = htmlentities(trim($_POST['Mail'],ENT_QUOTES));
if($Login && $Password && $repeatPass && $date_naissance && $Level && $Mail)
{
$sql = "SELECT * FROM users WHERE Login='".$Login."'";
$req = $DB->query($sql) or die ("Erreur SQL");
$data = $req->fetch();
if ($data['Login'] != $Login)
{
if($Password==$repeatPass)
{
$Password=md5($Password);
$d= array('$Login','$Password','$date_naissance','$Level','$Mail');
$req = $DB->prepare("INSERT INTO users VALUES('','$Login','$Password','$date_naissance','$Mail')");
$req->execute($d);
echo "<a href='./index.php'><span class='rac'>Retour</a></span><span class=\"messinsc\"><font color='green'> Inscription terminée </font></span>";
}else echo "<span class=\"messinsc\"> les deux mots de passes doivent etre identique !!!</span>";
}else echo "<span class=\"messinsc\"> Log existant</span>";
}else echo "<span class=\"messinsc\">Tous les champs ne sont pas remplis !!!</span>";
}
Sinistrus
Messages postés
1010
Date d'inscription
Statut
Membre
Dernière intervention
17
Merci beaucoup !