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 :

update sql me donne une page blanche


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut update sql me donne une page blanche
    Bonjour,

    j ai une table avec deu champs id_label et nom_label

    et une table contenu avec 6 champs : id, id_label, reference, artiste, album, format

    voial j ai un fichier php qui recupere la valeur d'un tableau avec les references artiste ... et qui m affiche la ligne correspondant a la reference choisie sous forme de tableau avec de stexte box pour modifier sauf que mon update fonctionne pas il m affiche une page blanche quand je clique sur modifier avez vous une idée ?

    Merci

    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
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
     
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Catalogue</title>
    <link rel="stylesheet" type="text/css" href="style.css">
    </head>
    <body link="#000000" vlink="#FFFFFF" alink="#FFFFFF">
    <div id="body">
     
    <?php
     
    include ('config.php');
    include ('connexion.php');
     
    //reference
     
    $reference = $_GET["reference"];
     
     
     
    $sql = "SELECT reference, artiste, album, format FROM contenu WHERE reference='".$_GET
     
    ['reference']."'" ;
    $req = mysql_query($sql) or die( mysql_error() ) ;
    $total = mysql_num_rows($req);
     
     
    if($total!=0)
     
    {
    echo '<form method ="post" action="modifier.php">';
    echo '<table>'."\n";
    echo '<tr>';
     
    echo '<td ><b><u>reference</u></b></td>';
    echo '<td><b><u>artiste</u></b></td>';
    echo '<td><b><u>album</u></b></td>';
    echo '<td><b><u>format</u></b></td>';
    echo '</tr>'."\n";
     
    while($row = mysql_fetch_array($req))
     
    {
    echo '<tr>';
    echo '<td><input type="text" name="reference" value="'.$row
     
    ["reference"].'"/></td>';
    echo '<td><input type="text" name="artiste" value="'.$row["artiste"].'"/></td>';
    echo '<td><input type="text" name="album" value="'.$row["album"].'"/></td>';
    echo '<td><input type="text" name="format" value="'.$row["format"].'"/></td>';
    echo '</tr>'."\n";
    }
     
    echo '</table>'."\n";
    echo '<input type="submit" name="btOk" value="Modifier"/>';
    echo '</form>';
    if (isset($_POST['btOk']))
    {
     
     
    $sql3= "UPDATE contenu SET reference='".$_POST['reference']."',artiste='".$_POST
     
    ['artiste']."',album='".$_POST['album']."',format='".$_POST['format']."' WHERE reference
    
    ='".$_GET['reference']."'" ;
     
     
     
    $req3= mysql_query($sql3) or die('Erreur SQL !'.$sql2.'<br>'.mysql_error());
     
     
     
    if($req3)
     
     
    {
    echo ("L'insertion a été correctement effectuée") ;
    }
     
    else
     
    {
    echo("L'insertion à échouée") ;
    }
     
    }
     
    }
     
    ?>
    </body></html>
     
     
    <?php
    mysql_close();
    ?>

  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
    Bonjour,

    Il serait plus logique de faire l'update avant l'affichage des données, sinon tu vas afficher les anciennes valeurs.

    Sinon pour debugguer ton probleme, fais un simple
    au début de ton script et vois s'il s'affiche puis descend le dans le deroulement du script.
    tu verras ainsi a quel point il y a un blocage.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut
    Merci sabotage

    j ai changé la disposition :-)

    en fait ca modifie bien les données dans ma base mais j ai aps le message echo comme quoi s ets bie deorulé page blanche ....

  4. #4
    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
    as-tu debuggué comme je te l'ai expliqué ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut
    oui je veins de le faire desole de répondre s tard il a arrete de s afficher au niveau de if($req3)

    bizarre je redonne mon code peut etre qu il y a une incoherence

    de plus je veux ajouter la mpossibbilité de modifier également les références

    code actuel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $sql3= "UPDATE contenu SET  artiste='".$_POST
     
    ['artiste']."',album='".$_POST['album']."',format='".$_POST['format']."' WHERE reference
     
    ='".$_POST['reference']."'" ;
    code souhaité qui ne marche pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $sql3= "UPDATE contenu SET reference='".$_POST
     
    ['reference']."' artiste='".$_POST
     
    ['artiste']."',album='".$_POST['album']."',format='".$_POST['format']."' WHERE reference
     
    ='".$_POST['reference']."'" ;
    et voici le message d erreur que j ai lorsqu il y a la ajout Erreur SQL !UPDATE contenu SET reference='fff' artiste='LUCIEVACARME ',album='Audioscope',format='7' WHERE reference ='fff'
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'artiste='LUCIEVACARME ',album='Audioscope',format='7' WHERE reference ='fff'' at line 1

  6. #6
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut
    ah oui voici le code de mon fichier php

    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
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Catalogue</title>
    <link rel="stylesheet" type="text/css" href="style.css">
    </head>
    <body link="#000000" vlink="#FFFFFF" alink="#FFFFFF">
    <div id="body">
     
    <?php
     
    include ('config.php');
     include ('connexion.php'); 
     
    //reference
     
     
    $reference = $_POST["reference"];
     
     
     
     
    $sql = "SELECT reference, artiste, album, format FROM contenu WHERE reference='".$_GET['reference']."'" ;
     $req = mysql_query($sql) or die( mysql_error() ) ; 
      $total = mysql_num_rows($req);
     
    $sql3= "UPDATE contenu SET  reference='".$_POST
     
    ['reference']."' artiste='".$_POST
     
    ['artiste']."',album='".$_POST['album']."',format='".$_POST['format']."' WHERE reference
    
    ='".$_POST['reference']."'" ;
     
     
     
    $req3= mysql_query($sql3) or die('Erreur SQL !'.$sql3.'<br>'.mysql_error());
     
     
     if($total!=0) 
     
       {
            echo '<form method ="post" action="modifier.php">';
            echo '<table>'."\n";
            echo '<tr>';
     
            echo '<td ><b><u>reference</u></b></td>';
            echo '<td><b><u>artiste</u></b></td>';
            echo '<td><b><u>album</u></b></td>';
            echo '<td><b><u>format</u></b></td>';
            echo '</tr>'."\n";
     
     while($row = mysql_fetch_array($req)) 
     
      {
            echo '<tr>';
            echo '<td><input type="text" name="reference" value="'.$row["reference"].'"/></td>'; 
            echo '<td><input type="text" name="artiste" value="'.$row["artiste"].'"/></td>'; 
            echo '<td><input type="text" name="album" value="'.$row["album"].'"/></td>'; 
            echo '<td><input type="text" name="format" value="'.$row["format"].'"/></td>'; 
            echo '</tr>'."\n";
      }
     
            echo '</table>'."\n";
            echo '<input type="submit" name="btOk" value="Modifier"/>';
            echo '</form>';
           if (isset($_POST['btOk']))
      {
     
     
     
     
     
     
     echo 'je suis ici';    if($req3)
     
     
      {
            echo ("L'insertion a été correctement effectuée") ;
      }
     
     else
     
      {
            echo("L'insertion à échouée") ;
      }
     
      }
     
      } 
     
    ?> 
    </body></html>
     
     
    <?php
    mysql_close();
    ?>

  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
    Il te manque une virgule entre la reference et l'artiste.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  8. #8
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut
    oui j avais pas vu j ai modifié mais toujours pareil

  9. #9
    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
    Quelle condition ne passe pas ?
    As-tu controlé la valeur des variables concernées ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  10. #10
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut
    alors en fiat des que je rajoute un echo n importe ou apres cette boucle if (isset($_POST['btOk']))
    {

    l echo me et une page blanche ...

  11. #11
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    bon beeeen comme je le dis dans presque tous les posts avec des formulaires : ne jamais tester le submit, dans certains cas il ne renvoie pas TRUE au isset() bien que le formulaire ait été envoyé.

    Ajoute un champ de type hidden et fais le test sur ce champ

    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?php
    if( isset($_POST['action']) && $_POST['action'] == "envoyer" ) {
         // le formulaire a bien été envoyé, je fais mes traitements
    }
    ?>
    <form ....>
    ....
    <input type="hidden" name="action" value="envoyer" />
    <input type="submit" value="Envoyer le formulaire" />
    </form>

  12. #12
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut
    je vais tester ca apr contre j ai remarquer que quand j en leve le ca fonctionne ... je modifie mes données je valide il me met "insertion correctement effectué" et il me vide les champs mais ma base ets bien modié ....

  13. #13
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut
    quand je lui ajoute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     if (isset($_POST['BtOk'])) && $_POST['BtOk] == "envoyer" )
    voila le message affcihé Parse error: syntax error, unexpected T_BOOLEAN_AND in D:\wamp\www\handsandarms\modifier.php on line 65

  14. #14
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    Citation Envoyé par stefanelle Voir le message
    quand je lui ajoute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     if (isset($_POST['BtOk'])) && $_POST['BtOk] == "envoyer" )
    voila le message affcihé Parse error: syntax error, unexpected T_BOOLEAN_AND in D:\wamp\www\handsandarms\modifier.php on line 65
    T'as une faute de synthaxe.... il faut écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_POST['BtOk'] == "envoyer"
    et pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_POST['BtOk] == "envoyer"
    mais comme je l'ai dit, il ne faut PAS tester sur le bouton submit !!!!!!!!!!!!!!

    PS : pour ton if, essaye un test simple du genre => if( $total > 0 )

  15. #15
    Membre Expert Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 895
    Par défaut
    Citation Envoyé par stefanelle Voir le message
    sabotage comment ca une parenthese en trop ? desole je tatonne j essate d apprendre par mes propres moyens mais c est pas facile ...
    il a raison... regarde ce que tu as écrit...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (isset($_POST['BtOk'])) && $_POST['BtOk] == "envoyer" )
    alors qu'il aurait fallu écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if( isset($_POST['BtOk']) && $_POST['BtOk'] == "envoyer" )
    en gros, tu "fermais" ton if() directement apres avoir tester le isset()

  16. #16
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut
    je viens de regler mes soucis de parentheses

    voila ce que j ai fait

    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
       if (isset($_POST['action']) && ($_POST['action']) == "envoyer" )
     
     
      {
     
     
     
     
     
     
     
     
            echo ("L'insertion a été correctement effectuée") ;
      }
     
     
     
      } 
     
    ?> 
    <form method ="post" action="modifier.php">
    <input type="hidden" name="action" value="envoyer" />
    <input type="submit" value="Envoyer le formulaire" />
    </form>
    et quand je clique sur envoyer le formulaire il m envoie ver sune autre page en affichant le bouton "envoyer le formulaire"

Discussions similaires

  1. Génération d'une page blanche après la première page
    Par le_tisseur dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 08/09/2006, 16h19
  2. [CR] Générer une page blanche pour imprimer en recto-verso
    Par PasHyperPon dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 02/04/2006, 19h06
  3. CR10 : insérer une page blanche sur les ruptures pages paire
    Par speed034 dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 07/09/2005, 18h09
  4. Internet Explorer m'affiche une page blanche
    Par poof65 dans le forum IE
    Réponses: 10
    Dernier message: 15/08/2005, 22h50
  5. [CR] Avoir seulement une page blanche qd la base est vide???
    Par littleChick dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 13/08/2002, 18h26

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