Bouton modifier BDD PHP

Fermé
Mopire Messages postés 23 Date d'inscription jeudi 14 avril 2011 Statut Membre Dernière intervention 6 juin 2011 - Modifié par Mopire le 16/05/2011 à 08:30
Mopire Messages postés 23 Date d'inscription jeudi 14 avril 2011 Statut Membre Dernière intervention 6 juin 2011 - 18 mai 2011 à 15:06
Bonjour,

J'affiche une table de ma BDD dans un tableau.
J'aimerai faire que si le compte n'est pas activer, cliquer sur le bouton pour que ça active le compte.

<?  
 mysql_connect("", "", "");  
               mysql_select_db("");  

// requête SQL qui compte le nombre total d'enregistrement dans la table et qui
//récupère tous les enregistrements
$select = 'SELECT Nom_Entreprise,nom,prenom,Adresse_Email,Compte_Active FROM Comptes_Utilisateurs WHERE Nom_Entreprise != NULL OR Nom_Entreprise != \'\'';
$result = mysql_query($select) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);

// si on a récupéré un résultat on l'affiche.
if($total) {
    // debut du tableau
    echo '<table width="809px" border="0" cellspacing="1" cellpadding="0">'."\n";
        // première ligne on affiche les titres prénom et surnom dans 2 colonnes
        echo '<tr align="center">';
        echo '<td width="14%" class="TABLE-HEAD"><strong>Nom Entreprise</strong></td>';
		echo '<td width="14%" class="TABLE-HEAD"><strong>Nom</strong></td>';
        echo '<td width="14%" class="TABLE-HEAD"><strong>Prenom</strong></td>';
		echo '<td width="14%" class="TABLE-HEAD"><strong>Email</strong></td>';
		echo '<td width="14%" class="TABLE-HEAD"><strong>Compte Active</strong></td>';
		echo '<td width="14%" class="TABLE-HEAD"><strong>Activation</strong></td>';
      echo '</tr>'."\n";
    // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
    while($row = mysql_fetch_array($result)) {
       echo '<tr align="center">';
		echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["Nom_Entreprise"].'</td>';
        echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["nom"].'</td>';
        echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["prenom"].'</td>';
		echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["Adresse_Email"].'</td>';
		echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["Compte_Active"].'</td>';
		echo '<td height="40" class="TABLE-BODY" valign="middle"><a href="modification.php"><button type="button">Activation</button></a></td>';
      echo '</tr>'."\n";
    }
        
    echo '</table>'."\n";
    // fin du tableau.
}
else echo 'Pas d\'enregistrements dans cette table...';

// on libère le résultat
mysql_free_result($result);

?>


J'espère que vous avez compris.

Merci d'avance.
A voir également:

4 réponses

Mopire Messages postés 23 Date d'inscription jeudi 14 avril 2011 Statut Membre Dernière intervention 6 juin 2011
13 mai 2011 à 14:53
J'ai modifié mon problème car j'en est résolue une partie.
0
Mopire Messages postés 23 Date d'inscription jeudi 14 avril 2011 Statut Membre Dernière intervention 6 juin 2011
16 mai 2011 à 08:31
Je fait un up, j'ai toujours besoin de votre aide!!
0
Mopire Messages postés 23 Date d'inscription jeudi 14 avril 2011 Statut Membre Dernière intervention 6 juin 2011
16 mai 2011 à 14:27
J'ai essayer de faire ça mais sa marche pas :

<?php
 mysql_connect("", "", "");
               mysql_select_db("");
$nom_entreprise = $_COOKIE["NOM_ENTREPRISE"];
if ($_COOKIE["Compte_Active"] == non) {
$modifier = 'UPDATE Comptes_Utilisateurs SET Compte_Active = \'oui\' WHERE nom_entreprise=$nom_entreprise';
$result = mysql_query($modifier) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
}
if ($result) {
header("Location: liste.php");
}
else {
	header("Location: index.php");
}
?>
0
Mopire Messages postés 23 Date d'inscription jeudi 14 avril 2011 Statut Membre Dernière intervention 6 juin 2011
18 mai 2011 à 15:06
J'ai changé ma première page, pour que le bouton ne s'affiche seulement si le compte n'est pas activé comme ceci :


  <?  
    mysql_connect("", "", "");  
    mysql_select_db("");  
      
    // requête SQL qui compte le nombre total d'enregistrement dans la table et qui  
    // récupère tous les enregistrements  
    $select = 'SELECT Nom_Entreprise,nom,prenom,Adresse_Email,Compte_Active,ID_Utilisateur FROM Comptes_Utilisateurs WHERE Nom_Entreprise != NULL OR Nom_Entreprise != \'\'';  
    $result = mysql_query($select) or die ('Erreur : '.mysql_error() );  
    $total = mysql_num_rows($result);  
      
    // si on a récupéré un résultat on l'affiche.  
    if($total) {  
        // debut du tableau  
        echo '<table width="809px" border="0" cellspacing="1" cellpadding="0">'."\n";  
            // première ligne on affiche les titres prénom et surnom dans 2 colonnes  
            echo '<tr align="center">';  
            echo '<td width="14%" class="TABLE-HEAD"><strong>Nom Entreprise</strong></td>';  
            echo '<td width="14%" class="TABLE-HEAD"><strong>Nom</strong></td>';  
            echo '<td width="14%" class="TABLE-HEAD"><strong>Prenom</strong></td>';  
            echo '<td width="14%" class="TABLE-HEAD"><strong>Email</strong></td>';  
            echo '<td width="14%" class="TABLE-HEAD"><strong>Valide</strong></td>';  
            echo '<td width="14%" class="TABLE-HEAD"><strong>Action</strong></td>';  
          echo '</tr>'."\n";  
        // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.      
        while($row = mysql_fetch_array($result)) {  
           echo '<tr align="center">';  
            echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["Nom_Entreprise"].'</td>';  
            echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["nom"].'</td>';  
            echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["prenom"].'</td>';  
            echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["Adresse_Email"].'</td>';  
            echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["Compte_Active"].'</td>';  
            if ($row['Compte_Active'] == "non"){ ?>  
                <td height="40" class="TABLE-BODY" valign="middle"><a href="modification.php?ID_Utilisateur=<?php $row["ID_Utilisateur"]?>"><img src="Images/valide.jpg"></img></a></td>  
                <?php  
            }  
            else { ?>  
                <td height="40" class="TABLE-BODY" valign="middle">  
                <?php  
            }  
          echo '</tr>'."\n";  
        }  
              
        echo '</table>'."\n";  
        // fin du tableau.  
    }  
    else echo 'Pas d\'enregistrements dans cette table...';  
      
    // on libère le résultat  
    mysql_free_result($result);  
      
    ?>  



Je me suis rendu compte qu'il vaut mieux que je transmette le id que le nom_entreprise donc c'est pour ça mon <a href="modification.php?ID_Utilisateur=<?php $row["ID_Utilisateur"]?>">.

la page modification.php donne ça :


    <?php    
    mysql_connect("", "", "");  
    mysql_select_db("");  
      $id = $_GET["ID_Utilisateur"];  
      
    $result = mysql_query('UPDATE Comptes_Utilisateurs SET Compte_Active = \'oui\' WHERE ID_Utilisateur='.$id) or die ('Erreur : '.mysql_error() );    
    $total = mysql_num_rows($result);  
      
    if ($total) {  
        echo("La modification à été correctement effectuée") ;  
      }  
      else  
      {  
        echo("La modification à échouée") ;  
      }  
          
    ?>  



Mais j'ai une erreur : Erreur : 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 '' at line 1

Pourtant sur ma première page si je remplace " echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["Compte_Active"].'</td>'; " par " echo '<td height="40" class="TABLE-BODY" valign="middle">'.$row["ID_Utilisateur"].'</td>'; " Ben il y a bien les ID_Utilisateur qui s'affiche donc mon $id ne doit pas être vide.

Je suis me planté quelque par??

Merci de votre aide.
0