IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de donn�es Discussion :

[Conception] insertion sql en php, dans une base de donn�e ?


Sujet :

PHP & Base de donn�es

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Inscrit en
    Ao�t 2004
    Messages
    499
    D�tails du profil
    Informations forums :
    Inscription : Ao�t 2004
    Messages : 499
    Par d�faut [Conception] insertion sql en php, dans une base de donn�e ?
    Bonjour,
    je fait un tutorial qui d�montre comment inserer des donn�es � l'aide d'un formulaire dans une base de donn�e !
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    <?
    echo $_POST[nom]."<br>";
    echo nl2br(stripslashes($_POST[informations]))."<br>";
    echo $_POST[categorie]."<br>";
     
    $hote="localhost";
    $utilisateur="root";
    $modpasse="6121970";
     
    $connection=mysql_connect ($hote, $utilisateur, $modpasse);
    //echo $connection;
     
    $nomdelabase="labase";
    mysql_select_db ($nomdelabase, $connection);
     
    $requete="INSERT latable SET numero='', nom='$_POST[nom]', informations='$_POST[informations]', catégorie='$_POST[categorie]'";
     
    //echo $requete;
     
    //$resultat=mysql_query ($requete, $connection);
     
    //echo $resultat;
     
    /*
    $test=mysql_fetch_array($resultat);
    
    //print_r($test);
    
    echo nl2br($test[informations]);
    */
    ?>
    J'ai beau retourner le code la requete ne fonctionne pas, quand j'�ssaie d'afficher la requete avec echo $requete; rien ne s'affiche, il est donc dit que la connection, la requette ou la sintaxe est d�ficiente parce que sa doit obligatoiremen afficher quelques chose un "1" notement et j'ai v�rifier phpmyadmin rien n'est �crit ?
    Merci d'avance

  2. #2
    Expert confirm� Avatar de Cybher
    Homme Profil pro
    Consultant r�seaux et s�curit�
    Inscrit en
    Mai 2005
    Messages
    3 281
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 42
    Localisation : France

    Informations professionnelles :
    Activit� : Consultant r�seaux et s�curit�
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Par d�faut
    salu,

    ta requete est fauuse:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    $requete="INSERT latable SET numero='', nom='$_POST[nom]', informations='$_POST[informations]', catégorie='$_POST[categorie]'";
    ceci n'existe pas

    c'est:
    -insert into table values...
    ou
    -update table set...

  3. #3
    Membre �clair�
    Inscrit en
    Ao�t 2004
    Messages
    499
    D�tails du profil
    Informations forums :
    Inscription : Ao�t 2004
    Messages : 499
    Par d�faut
    J'ai �ssayer
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    INSERT INTO latable VALUE numero='', nom='Monsieur Machin', informations='Voici les information à inserer dans la base de donnée C\'est très bien', catégorie='infos'
    Sa ne fonctionne pas ?�
    ou alors j'ai rien compris mais c'est vrai qu'en sql c'est la sintaxe d'apr�s phpmyadmin, bizarre !

  4. #4
    Membre �clair� Avatar de tigunn
    Homme Profil pro
    D�veloppeur de bug
    Inscrit en
    Janvier 2003
    Messages
    608
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur de bug

    Informations forums :
    Inscription : Janvier 2003
    Messages : 608
    Par d�faut
    SAlut l'ami SQL,

    Ta requete est encore fausse car la syntaxe serait plutot:

    $requete='INSERT INTO ma_table(nom_colonne_1,nom_colonne_2) VALUES (id_par_exemple, "ou texte aussi")';

    bref tu donne d'abord les noms des colonnes auquelles tu vas affecter une valeur, a savoir que cela depend la conception de ta base : si des colonnes sont decrite comme NOT NULL ou si tu a declarer des colonnes en auto-increment (voir tuto sql, par exemple http://www.ianywhere.com/developer/p...r9/dbrffr9.htm) , et ensuite tu leur attribue des valeurs avec l'instruction values()


    8) Ah mais vive les tuto fait par des pros !!!

    bon dev'

  5. #5
    Membre Expert
    Avatar de ska_root
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2005
    Messages
    1 203
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 56
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 1 203
    Par d�faut
    Citation Envoy� par artotal
    J'ai �ssayer
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    INSERT INTO latable VALUE numero='', nom='Monsieur Machin', informations='Voici les information à inserer dans la base de donnée C\'est très bien', catégorie='infos'
    Sa ne fonctionne pas ?�
    ou alors j'ai rien compris mais c'est vrai qu'en sql c'est la sintaxe d'apr�s phpmyadmin, bizarre !
    essaies comme �a :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    INSERT INTO latable VALUES (numero='', nom='Monsieur Machin', informations='Voici les information à inserer dans la base de donnée C\'est très bien', catégorie='infos')
    [edit]�a marche si tu as exactement 4 champs dans la table, et si numero est un auto-increment mais NULL au lieu de numero=''
    sinon si ce n'est pas le nombre exact de champs contenus dans la table, fait comme dit plus haut, CAD en nommant les champs avant VALUES , en plus tu es sur de ne pas faire de conneries de cette fa�on, c'est la meilleure...[/edit]
    ;-)

  6. #6
    Membre �clair�
    Inscrit en
    Ao�t 2004
    Messages
    499
    D�tails du profil
    Informations forums :
    Inscription : Ao�t 2004
    Messages : 499
    Par d�faut
    Sa ne fonctionne pas donc je vous explique la manoeuvre :
    alors en fait j'ai 4 champs, dont "numero" qui est auto increment bien sur !
    seulement je crois que vous n'avez pas saisis !
    le but de l'op�ration �tant qu'� la suite du formulaire j'insere, modifie et suprime des informations de la base !
    Donc je veux entrez dans les valeur de champs des valeurs de variables.
    et sa doit �tre ceux remplis par l'utilisateur dans la page du formulaire sous la forme numero='', graal='$_POST[blabla]', �veque='$_POST[test]', maupassant='$_POST[pope]',"
    Afin de re�evoir et enregistr� les donn�e du formulaire directement dans la table et les champs demander.

  7. #7
    Membre Expert
    Avatar de ska_root
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2005
    Messages
    1 203
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 56
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 1 203
    Par d�faut
    Je crois qu'un passage par les cours php/mysql s'impose

    pour une table du nom de "matable" ayant les champs suivants :
    - id_enreg > int auto-increment
    - graal > varchar
    - eveque > varchar
    - maupassant > varchar
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    <?php
    // connexion
    $link = mysql_connect($hote,$login,$password);
    if(!$link) die (mysql_error());
    mysql_select_db($base) or die (mysql_error());
     
    // reception des valeurs POST
    // pour l'exemple, si elle n'existent pas, on met une valeur vide... mais on pourrait mettre un valeur par défaut
    // sauf pour $id_enreg qui definit s'il s'agit d'un insert ou d'un update
    $id_enreg=(!isset($_POST['id_enreg']))?(''):($_POST['id_enreg']);
    $graal=(!isset($_POST['graal']))?(''):($_POST['graal']);
    $eveque=(!isset($_POST['eveque']))?(''):($_POST['eveque']);
    $maupassant=(!isset($_POST['maupassant']))?(''):($_POST['maupassant']);
     
    // echappement des quotes
    $graal=mysql_real_escape_string($graal, $link);
    $eveque=mysql_real_escape_string($eveque, $link);
    $maupassant=mysql_real_escape_string($maupassant, $link);
     
    if(empty($id_enreg)) {
     
       // insertion
       $sql = "INSERT INTO `matable` (id_enreg, graal, eveque, maupassant) VALUES (NULL, '$graal', '$eveque', '$maupassant');
    
    }else {
    
       // mise a jour
       $sql = "UPDATE `matable` SET graal = '$graal', eveque = '$eveque', maupassant = '$maupassant' WHERE id_enreg = ".$id_enreg;
    
    }
    
    $res = mysql_query($sql, $link);
    if(!$res) die (mysql_error());
    echo "Ajouts/Modifications effectués";
    ?>

Discussions similaires

  1. [Conception] Rep�rer un nouvel enregistrement dans une base de donn�es
    Par MikeV dans le forum PHP & Base de donn�es
    R�ponses: 3
    Dernier message: 30/08/2007, 16h49
  2. [Conception] inertion d'un fichier dans une base de donne
    Par laminebarasow dans le forum PHP & Base de donn�es
    R�ponses: 3
    Dernier message: 19/07/2006, 23h13
  3. [MySQL] R�cup�ration de code php dans une base de donn�es
    Par kitana dans le forum PHP & Base de donn�es
    R�ponses: 4
    Dernier message: 21/03/2006, 00h25
  4. [Conception] Stocker des fichiers multim�dia dans une base de donn�es
    Par haifa84 dans le forum PHP & Base de donn�es
    R�ponses: 3
    Dernier message: 11/03/2006, 17h47
  5. [Conception] Code php dans une base de donn�e
    Par krfa1 dans le forum PHP & Base de donn�es
    R�ponses: 8
    Dernier message: 13/09/2005, 10h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo