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 :

Insérer des données


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 11
    Par défaut Insérer des données
    Bonjour,

    Je viens de créer un formulaire pour ajouter des données à une base "videotheque" sur phpmyadmin.

    La page web présente bien des cases de remplissage mais quand je valide, les données ne sont pas intégrées dans la base.

    Pouvez-vous me dire si une erreur vous saute aux yeux.

    Merci pour votre aide et bravo pour votre travail.


    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
    <html>
    <head><title>Nouveau film</title><link href="presentation.css" rel="stylesheet" type="text/css" /></head>
    <body>
     
     
    <center>
    <H1><FONT color=blue>Nouveau film</FONT></H1>
    </center>
     
     
    <?php
     
     
    // Etablissement de la connexion avec le serveur
    $connexion=mysql_connect("localhost","root","");
     
    // Test de la connexion
    if (!$connexion) {
    	echo "La connexion au serveur n'a pu être établie<BR>";
    	exit;
    }
     
    //Test de l'accès à la base
    if (!mysql_select_db("videotheque",$connexion)) {
    	echo "L'accès à la base n'est pas permis<BR>";
    	exit;
    }
     
    $labels = array( "idfilm"=>"idfilm:",
    			   "titre"=>"titre:",
    			   "resume"=>"resume:",
    			   "annee"=>"annee:",
    			   "duree"=>"duree:",
    			   "dateinser"=>"dateinser:");
     
    foreach($_POST as $champ => $valeur)
     
    {
    $req = "INSERT INTO film (idfilm,titre,resume,annee,duree,dateinser)
    VALUES ('$dataOk[idfilm]','$dataOk[titre]','$dataOk[resume]','$dataOk[annee]','$dataOk[duree]','$dataOk[dateinser]')";
    $result = mysql_query($connexion,$req)
    or die ("Impossible");
    echo "<h4>Le nouveau film a été ajouté</h4>";
    }
     
    echo "<p> <hr />";
    echo "<h3>Remplissez le formulaire</h3>";
    echo "<form action='Ajout.php' method='POST'>
    <table width='95%' border='0' cellspacing='0'
    cellpadding='2'";
     
    foreach($labels as $champ=>$label)
    {
     
    	echo "<tr>
    	<td align='right' <B>{$labels[$champ]}</br></td>
    	<td><input type='text' name='$champ'
    	</td>
    	</tr>";
    }
     
    echo "<tr>
    <td colspan='2' style='text-align: center'>
    <input type='submit' value='Ajouter'>";
    echo "</td></tr></table>
    </form>";
    exit();
     
    ?>
     
     
    </body>
    </html>

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Ton $dataOk n'est défini nul part ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 11
    Par défaut
    Pouvez-vous m'expliquer comment faire et ou je dois l'installer ?

    Merci

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 11
    Par défaut
    J'ai ajouté $dataOk[$champ]=strip_tags(trim($_POST[$champ])); pour définir $dataOk mais ça ne marche toujours pas.

    Voyez-vous autre chose qui ne va pas dans le code ?

    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
     
    <html>
    <head><title>Nouveau film</title><link href="presentation.css" rel="stylesheet" type="text/css" /></head>
    <body>
     
     
    <center>
    <H1><FONT color=blue>Nouveau film</FONT></H1>
    </center>
     
     
    <?php
     
     
    // Etablissement de la connexion avec le serveur
    $connexion=mysql_connect("localhost","root","");
     
    // Test de la connexion
    if (!$connexion) {
    	echo "La connexion au serveur n'a pu être établie<BR>";
    	exit;
    }
     
    //Test de l'accès à la base
    if (!mysql_select_db("videotheque",$connexion)) {
    	echo "L'accès à la base n'est pas permis<BR>";
    	exit;
    }
     
    $labels = array( "idfilm"=>"idfilm:",
    			   "titre"=>"titre:",
    			   "resume"=>"resume:",
    			   "annee"=>"annee:",
    			   "duree"=>"duree:",
    			   "dateinser"=>"dateinser:");
     
    foreach($_POST as $champ => $valeur)
     
     
     
    echo "<p> <hr />";
    echo "<h3>Remplissez le formulaire</h3>";
    echo "<form action='Ajout.php' method='POST'>
    <table width='95%' border='0' cellspacing='0'
    cellpadding='2'";
     
    foreach($labels as $champ=>$label)
    {
    	$dataOk[$champ]=strip_tags(trim($_POST[$champ]));
     
    	echo "<tr>
    	<td align='right' <B>{$labels[$champ]}</br></td>
    	<td><input type='text' name='$champ'
    	</td>
    	</tr>";
    }
     
    echo "<tr>
    <td colspan='2' style='text-align: center'>
    <input type='submit' value='Ajouter'>";
    echo "</td></tr></table>
    </form>";
    exit();
     
    {
    $req = "INSERT INTO film (idfilm,titre,resume,annee,duree,dateinser)
    VALUES ('$dataOk[idfilm]','$dataOk[titre]','$dataOk[resume]','$dataOk[annee]','$dataOk[duree]','$dataOk[dateinser]')";
    $result = mysql_query($connexion,$req)
    or die ("Impossible");
    echo "<h4>Le nouveau film a été ajouté</h4>";
    }
     
    ?>
     
     
    </body>
    </html>

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Il y a un <input> qui n'a pas de >

    Affiche $req, tu verras ainsi tout de suite ou tu en es de tes variables et de ta requête.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 11
    Par défaut
    en fait, je n'arrive pas à afficher les données

    Comment dois-je faire ?

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Qu'est ce que tu veux afficher ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 11
    Par défaut
    J'ai corrigé une erreur mais ça ne fonctionne toujours pas.

    En fait, le formulaire de remplissage sur la page web est là mais quand je rentre les données et que je valide, les données ne sont pas ajoutées à la base.

    La page web fait apparaître une nouvelle fois le formulaire vierge.

    Voyez-vous une erreur ?

    Merci de votre aide
    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
     
    <html>
    <head><title>Nouveau film</title><link href="presentation.css" rel="stylesheet" type="text/css" /></head>
    <body>
     
     
    <center>
    <H1><FONT color=blue>Nouveau film</FONT></H1>
    </center>
     
     
    <?php
     
     
    // Etablissement de la connexion avec le serveur
    $connexion=mysql_connect("localhost","root","");
     
    // Test de la connexion
    if (!$connexion) {
    	echo "La connexion au serveur n'a pu être établie<BR>";
    	exit;
    }
     
    //Test de l'accès à la base
    if (!mysql_select_db("videotheque",$connexion)) {
    	echo "L'accès à la base n'est pas permis<BR>";
    	exit;
    }
     
    $labels = array( "idfilm"=>"idfilm:",
    			   "titre"=>"titre:",
    			   "resume"=>"resume:",
    			   "annee"=>"annee:",
    			   "duree"=>"duree:",
    			   "dateinser"=>"dateinser:");
     
    foreach($_POST as $champ => $valeur)
     
     
     
    echo "<p> <hr />";
    echo "<h3>Remplissez le formulaire</h3>";
    echo "<form action='Ajout.php' method='POST'>
    <table width='95%' border='0' cellspacing='0'
    cellpadding='2'";
     
    foreach($labels as $champ=>$label)
    {
    	$dataOk[$champ]=strip_tags(trim($_POST[$champ]));
     
    	echo "<tr>
    	<td align='right' <B>{$labels[$champ]}</br></td>
    	<td><input type='text' name='$champ'>
    	</td>
    	</tr>";
    }
     
    echo "<tr>
    <td colspan='2' style='text-align: center'>
    <input type='submit' value='Ajouter'>";
    echo "</td></tr></table>
    </form>";
    exit();
     
    {
    $req = "INSERT INTO film (idfilm,titre,resume,annee,duree,dateinser)
    VALUES ('$dataOk[idfilm]','$dataOk[titre]','$dataOk[resume]','$dataOk[annee]','$dataOk[duree]','$dataOk[dateinser]')";
    $result = mysql_query($req,$connexion)
    or die ("Impossible");
    echo "<h4>Le nouveau film a été ajouté</h4>";
    }
     
    ?>
     
     
    </body>
    </html>

Discussions similaires

  1. [JTable] insérer des données...
    Par gondek dans le forum Composants
    Réponses: 9
    Dernier message: 13/10/2005, 11h56
  2. [MySQL] Comment insérer des données contenant un "\" dans
    Par ALEX77 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 04/09/2005, 16h04
  3. Insérer des données cryptées MD5
    Par Amnesiak dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 09/08/2005, 18h08
  4. Insérer des données Excel dans une base Access ?
    Par MaTHieU_ dans le forum Access
    Réponses: 3
    Dernier message: 22/06/2005, 15h11
  5. [JTable] Insérer des données?
    Par waldo2188 dans le forum Composants
    Réponses: 4
    Dernier message: 29/03/2005, 11h40

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