CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • 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 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[PHP] Parse error - écrire dans une BDD

ztoul
ztoul
Niveau 6
08 août 2012 à 00:06:45

Bonjour je souhaite écrire dans une BDD qui se nomme bazofcra_sms et j'ai une parse error t-string ... a cette ligne :

INSERT INTO bazofcra_sms(id, contenu) VALUES( ' ', '$message');

L'id est auto incrémenté et le contenu est la variable récuperer au préalable

cakekong
cakekong
Niveau 7
08 août 2012 à 01:15:07

Salut !
Sans plus d'informations (notamment un peu plus de code...) il est assez difficile de pouvoir t'aider.
Vu les guillemets mal employés, il doit d'agir d'un problème de concaténation de chaînes de caractères. :-)))

Soit tu échappes les guillemets avec le backslash (\'), soit tu utilises l'opérateur de concaténation (.) pour relier tes chaînes entre elles. Par exemple :
'INSERT INTO bazofcra_sms(id, contenu) VALUES( "'.'", '.$message.');'

PS : il s'agit d'une table et non d'une base de données ! Attention aux confusions :-)))
PS 2 : tu n'as pas besoin de préciser la clé primaire (id) si elle s'incrémente automatiquement.

:)

chris_27
chris_27
Niveau 10
08 août 2012 à 01:19:39

« L'id est auto incrémenté » :d) dans ces cas, ne faut-il pas ignorer le champ id est faire un truc du genre :

INSERT INTO bazofcra_sms(contenu) VALUES('$message');

PS: vérifie 10 fois la provenance du $message avant de mettre un code pareil, sinon tu cours tout droit à la faille SQL !

chris_27
chris_27
Niveau 10
08 août 2012 à 01:20:29

faille *d'injection* SQL. :sleep:

ztoul
ztoul
Niveau 6
08 août 2012 à 01:25:24

Toujours la parse error le code :

mysql_connect ($serveur,$login,$pwd) or die ('ERREUR '.mysql_error());
mysql_select_db ($bazofcra_sms) or die ('ERREUR '.mysql_error());

INSERT INTO bazofcra_sms(contenu) VALUES('$message');

echo 'Le message a bien été ajouté !';

cakekong
cakekong
Niveau 7
08 août 2012 à 10:11:11

Cela fait des années que je n'utilise plus ce système de connexion à une BDD, mais pourquoi la requête SQL est perdue dans le code PHP ?
Il me semble qu'il faut la passer dans une fonction comme mysql_query().
http://www.php.net/manualal/fr/function.mysql-query.php

Mais tu auras toujours l'erreur car les guillemets sont mal utilisés.

'INSERT INTO bazofcra_sms(contenu) VALUES('.$message.');' ;

serait plus correct (encapsuler la requête dans des simples quotes et concaténation avec la variable). Utilises-tu un éditeur de texte avec coloration synataxique ? Cela aide beaucoup pour ce genre d'erreurs :-)))

ztoul
ztoul
Niveau 6
08 août 2012 à 12:16:51

Je vais esseillé de trouvé une autre option car maintenant j'ai 'no data base selectioned' merci a vous

ztoul
ztoul
Niveau 6
08 août 2012 à 12:27:35

Probleme résolu avec mysql_query() merci a vous

ztoul
ztoul
Niveau 6
08 août 2012 à 13:06:06

Pu d'érreur mais ca n'écris pas dans la table :

$message = $_REQUEST['sms'];
Connection et selection a la base

mysql_query ("INSERT INTO sms VALUES('1', '.$message.')");

...

Merci

Bunyan
Bunyan
Niveau 17
08 août 2012 à 13:43:31

Honnêtement : va lire des cours et/ou faire des tutoriels sur le langage Php, sa syntaxe, ses opérateurs, les fonctions, l'utilisation ... ainsi que des cours sur le SQL.

Tu n'es pas sensé poser ce genre de question et insister dessus sans voir le problème évident.

Ps : c'est cool aussi de poster TOUT le BOUT de code en relation avec ton erreur, pas juste 2-3 lignes éparses.

Fire_Storm
Fire_Storm
Niveau 10
08 août 2012 à 20:56:12

Pareil qu'au dessus.

Et pourquoi $_REQUEST ? ^^

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment