CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS

Sujet : [aide] Probleme Insert Into php/mysql

DébutPage précedente
1
Page suivantePage suivante
Seeone Seeone
MP
Niveau 7
21 juillet 2014 à 11:21:50

Bonjour,

Je m'entraine sur un petit projet de site web pour améliorer mon niveau php/mysql et j'ai rencontré un petit probleme, je n'arrive pas à enregistrer des donnees dans ma base de donnees.

Voici le bout de code où je pense qu'il y a erreur: http://pastebin.com/1uuDStTf

Merci :)

Pseudo supprimé
Niveau 10
21 juillet 2014 à 11:46:11

Salut,

dans ton INSERT INTO (à la ligne 11 de ton pastebin), tu spécifies comme nom de colonne 'id' et 'prenom' alors que dans tes values tu ne leur donne pas de valeur.
En gros, tu ne donnes pas le même nombre de colonne dans ta parenthèse de gauche que dans ta parenthèse de droite, donc c'est le bordel pour MySql qui ne comprend rien à ta requête :)

Ta requête devrait ressembler à ceci:
mysql_query("INSERT INTO allannonces (service, ville, prenom, jours, telephone, email, annonce) VALUES ('$service', '$ville', '$prenom','$jours', '$telephone', '$email','$annonce')");

Petits trucs:

Pas besoin de spécifier l'id si ta colonne est en auto-increment
isset() accepte plusieurs variables ( https://www.jeuxvideo.com/forums/1-30-7921730-1-0-1-0-php-isset-accepte-plusieurs-variables.htm )
Utilise dés a présent PDO à la place des fonctions mysql qui sont obsolètes

Seeone Seeone
MP
Niveau 7
21 juillet 2014 à 12:04:38

Jai modifié cette requète mais ça n'enregistre toujours pas :(

Peut etre que cest ici :
mysql_connect("localhost", "root", "monmdp");
mysql_select_db("nom_de_ma_base_de_donnees");

Je dois le remplacer par ca?:
$dsn = 'mysql:host=localhost;dbname=testdb';
$username = 'username';
$password = 'password';
$options = array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8',
);

$dbh = new PDO($dsn, $username, $password, $options);

Seeone Seeone
MP
Niveau 7
21 juillet 2014 à 12:17:47

Peut etre que le html est aussi source d'erreur: http://pastebin.com/ZCPxfsdP

yes-man yes-man
MP
Niveau 11
21 juillet 2014 à 13:06:50

PDO ça s'utilise de A à Z, ça se ne mixe pas avec les mysql(i)_
Donc faut que tu fasses TOUT façon PDO

-> La connexion
-> La requête et l'execution

Seeone Seeone
MP
Niveau 7
21 juillet 2014 à 13:26:51

Et dans mon cas, quelles requetes faut il que j'utilise?

Seeone Seeone
MP
Niveau 7
21 juillet 2014 à 14:08:57

J'ai essayé ça: http://pastebin.com/iTdAsHCt

Mais ca ne marche pas... Quelqu'un sait où est l'erreur ou comment je peux faire pour enregistrer tout ca dans ma database?

Merci d'avance

Diabolo09 Diabolo09
MP
Niveau 10
22 juillet 2014 à 12:42:56

Teste avec des "or die"

Genre :

mysql_connect($serveur,$login,$mdp) or die ("serveur de base de données injoignable");
mysql_query($sql) or die(mysql_error($sql)).

Ça devrait t'aider à situer l'erreur.

Seeone Seeone
MP
Niveau 7
22 juillet 2014 à 22:24:45

Merci je vais essayer :)

Pseudo supprimé
Niveau 5
23 juillet 2014 à 16:59:14

Pourquoi faire un mysql connect quand tu as Pdo qui existe et qui est bien mieux sécurisé ?
http://fr.openclassrooms.com/informatique/cours/pdo-interface-d-acces-aux-bdd

Seeone Seeone
MP
Niveau 7
23 juillet 2014 à 21:38:42

Voila mon nouveau code : http://pastebin.com/mkUg5CSr
+ http://pastebin.com/yw1wmerP

Mais il ne marche toujours pas :(
Je ne voie pas l'erreur. :-(

Jvousmanipule Jvousmanipule
MP
Niveau 9
24 juillet 2014 à 12:29:19

Tu as un id qui s'auto incrémente ?
Rajoute allannonces(id,ville, prenom, telephone, email, annonce) VALUES(:id, :ville, :prenom, :telephone, :email, :annonce)'

$req->execute(array('id' => '', 'ville' => $_POST['ville'],
'prenom' => $_POST['prenom'...)

T'es pas obligé de mettre les : dans le array

Seeone Seeone
MP
Niveau 7
24 juillet 2014 à 22:45:27

Merci pour le conseil :)
Mais en fait c'est juste avec wamp en local que ça ne marche pas :( J'ai souscrit à une offre d'hébergement gratuit et les données sont insérées dans la bdd.

DébutPage précedente
1
Page suivantePage suivante
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : Thymotep
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

La vidéo du moment