Php-SQL - mysql_query(INSERT TO..); -HELP ???
Résolu
BartWadela
Messages postés
562
Date d'inscription
Statut
Membre
Dernière intervention
-
BartWadela Messages postés 562 Date d'inscription Statut Membre Dernière intervention -
BartWadela Messages postés 562 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai besoin d'un petit coup de main, je sais pas si vous pourrez m'aider.
j'essaye de créer un mini-chat temporaire, c'est a dire que le visiteur arrive sur la page index :
- soit il indique le nom d'un "forum," qui existe et la il se connecte sur le "forum," en cours de discussion
soit il indique le nom d'un "forum," qui n'existe pas et la ça créer une table dans la bdd (table qui sera suppr. a la deconx avec drop_table)
- j'ai 2 pages : test.php et test02.php :
- sur la 1ere (test.php = index), je demande au visiteur de se connecter sur table existante ou de la créer - ça ça fonctionne impeccable
- sur la 2nde (test02.php = chat), le visiteur mets son pseudo et son msg et ca envoi sur la table dans la bdd, puis en affiche le contenu (comme sur le site du zero), par contre ce qui ne fonctionne pas c'est ma commande = mysql_query(INSERT TO ...);
qd je mets le contenu entre parenthese en "dur," ca insere bien dans la bdd,
par contre vu que le nom de la table et gérer par les sessions - $_SESSION['forum']
j'arrive pas a entrer la commande mysql_query(INSERT TO ...); avec cette variables en plus
je sais pas si vous m'avez compris
je poste mets deux codes : dites moi ce que vous en pensez !? (je débute en php/sql j'ai que 3mois d'xp)
test.php
et test02.php
j'ai besoin d'un petit coup de main, je sais pas si vous pourrez m'aider.
j'essaye de créer un mini-chat temporaire, c'est a dire que le visiteur arrive sur la page index :
- soit il indique le nom d'un "forum," qui existe et la il se connecte sur le "forum," en cours de discussion
soit il indique le nom d'un "forum," qui n'existe pas et la ça créer une table dans la bdd (table qui sera suppr. a la deconx avec drop_table)
- j'ai 2 pages : test.php et test02.php :
- sur la 1ere (test.php = index), je demande au visiteur de se connecter sur table existante ou de la créer - ça ça fonctionne impeccable
- sur la 2nde (test02.php = chat), le visiteur mets son pseudo et son msg et ca envoi sur la table dans la bdd, puis en affiche le contenu (comme sur le site du zero), par contre ce qui ne fonctionne pas c'est ma commande = mysql_query(INSERT TO ...);
qd je mets le contenu entre parenthese en "dur," ca insere bien dans la bdd,
par contre vu que le nom de la table et gérer par les sessions - $_SESSION['forum']
j'arrive pas a entrer la commande mysql_query(INSERT TO ...); avec cette variables en plus
je sais pas si vous m'avez compris
je poste mets deux codes : dites moi ce que vous en pensez !? (je débute en php/sql j'ai que 3mois d'xp)
test.php
<?php session_start(); ?> <?php define('PREFIX_SQL2', 'CREATE TABLE IF NOT EXISTS '); define('SUFFIX_SQL2', ' ( `id` MEDIUMINT NOT NULL AUTO_INCREMENT , `pseudo` TEXT NOT NULL , `message` TEXT NOT NULL , PRIMARY KEY ( `id` ) ) ENGINE = MYISAM;'); ?> <p>/!\ ATTENTION /!\ <li>Pas d'espace</li> <li>Tout en minuscule</li> <li>Pas de chiffre en 1er caractère</li> <li>pas de caractères spéciaux</li> <li>16 caractères MAXI</li> </p> <form method=post action="test.php"> <p> <label>Nom du forum : </label> <input type=text size="20" maxlength="16" name="nom_chat" /> <input type="submit" value="OK"> </p> </form> <p>Si le forum est déjà créer : <a href="test02.php">cliquez ici</a> <?php $table_temp = htmlspecialchars(strtolower($_POST['nom_chat'])); $new_sql = (PREFIX_SQL2.$table_temp.SUFFIX_SQL2); include("data_bd.php"); mysql_connect("$db_server","$db_name","$db_user_pass"); mysql_select_db("$db_user_login"); mysql_query($new_sql); ?> <?php $_SESSION['forum'] = $table_temp; ?>
et test02.php
<?php session_start(); ?> Actuellement sur le forum : <?php echo $_SESSION['forum']; ?> <form action="test02.php" method="post"> <p> <label>Pseudo : </label> <input type="text" name="pseudo" /><br /> <label>Message : </label> <input type="text" name="message" /><br /> <input type="submit" value="Envoyer" /> </p> </form> <?php include("data_bd.php"); $sql_sql = mysql_connect("$db_server","$db_name","$db_user_pass"); mysql_connect("$db_server","$db_name","$db_user_pass"); mysql_select_db("$db_user_login"); $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); define ('PART01', '"INSERT INTO '); define ('PART02', ' VALUES ('); define ('PART03', ''); define ('PART05', '$pseudo', '$message'); $part01= "'', '$pseudo', '$message')"; define ('PART06', ';"'); $insert01= (PART01.$_SESSION['forum']); $insert02= ($insert01.PART02); $insert03= ($insert02.$part01); $insert04= ($insert03.PART06); mysql_query($insert04); // mysql_query("INSERT INTO bartwadela VALUES (NULL , 'pseudo001', 'text-001')"); // décnx SQL mysql_close(); ?>
A voir également:
- Php-SQL - mysql_query(INSERT TO..); -HELP ???
- Touche insert - Guide
- Qwerty to azerty - Guide
- Disk boot failure insert system disk and press enter - Guide
- Video to video - Télécharger - Conversion & Codecs
- Touche inser sur elite book hp - Forum PC portable
1 réponse
Déjà abandonne tes define & co ... ca en devient illisible, et derrière, c'est nous qui galérons pour débugguer. Il m'a fallu 10 minutes pour arriver au résultat ...
Traduction litérale de ton charabia de défintions:
"INSERT INTO $_SESSION['forum'] VALUES ( '', '$pseudo', '$message');"
forme d'une requete valide :
INSERT INTO `forum` (`id`, `pseudo`, `message`) VALUES ('', 'xxx', 'text');
plusieurs possibilités : problèmes des ' ou ` , $_SESSION existe pas, rajoutes les noms des champs ...
Traduction litérale de ton charabia de défintions:
"INSERT INTO $_SESSION['forum'] VALUES ( '', '$pseudo', '$message');"
forme d'une requete valide :
INSERT INTO `forum` (`id`, `pseudo`, `message`) VALUES ('', 'xxx', 'text');
plusieurs possibilités : problèmes des ' ou ` , $_SESSION existe pas, rajoutes les noms des champs ...
jsui bien d'accord avec toi...
$_SESSION['forum'] existe bien j'arrive a l'afficher pourtant.
jvais tester avec la syntaxe que tu me propose, ça se trouve c'est juste ça (je serai dégouté...)
en tout cas merci, d'avoir pris le temps de déchiffrer lire mon code.
Bon jpart en wkend, je vais voir ça lundi.
Merci beaucoup
j'ai juste mis =
et ça passe,
JSUI VEEEEEERRRRTTT...
c't trop simple
En tout cas merci beaucoup, et encore désolé d'avoir usé tes yeux sur mon code a 2 balles