Probleme d' id

graffx Messages postés 7513 Date d'inscription   Statut Contributeur Dernière intervention   -  
graffx Messages postés 7513 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

j' ai un souci, je fais un petit catalogue pour mon entreprise, pas un truc specialement compliqué, mais je galère a mort. Voila j' ai une page avec un menu (get), il fonctionne bien pour voir les differentes catégories.

J' ai utilisé le meme code dans le coté admin sous le nom effacer.php.

Le truc, c' est que j' aimerai qu' un bouton "effacer" s affiche a coté de chaque fiche. Je ne vois vraiment as comment faire pour que le bouton ai automatiquement l' id de la fiche. On m' a dit d' utiliser ca :

echo "<a href='fichierdetraitement.php?id=$id'>";

Le hic, je ne sais pas ou le mettre. Quelqu ' un pourrait me dire comment faire svp, je galere grave sur mon site :s

Merci d' avance :(

6 réponses

zoby44 Messages postés 868 Statut Membre 199
 
Salut, je ne vois pas trop le problème ?! C'est juste au niveau de l'affichage du bouton ?
Il faut le mettre quand tu créé la boucle pour lister les fiches. Si elles sont dans un bdd mysql tu peux faire ca comme ca:

$sql = mysql_query('SELECT * FROM table_fiche');
WHILE ($data = mysql_fetch_array($sql))
{
echo $data['nom_fiche'];
echo '<a href="traitement.php?supprimer='.$data['id_fiche'].'">Supprimer</a>';
}


et dans ton fichier traitment.php tu récupère le $_GET['supprimer'] et tu joue avec. C'est le même principe si c'est un scan de fichiers dans un dossier, il faut le mettre dans la boucle qui liste tes fiches. J'espère que ça va pouvoir t'avancer un peu.
0
graffx Messages postés 7513 Date d'inscription   Statut Contributeur Dernière intervention   1 976
 
Je suis perdu ><

je te montre mon code et si tu pouvais me dire parce que la je suis plus :)

<?php    
if (!empty($_GET['categorie'])) {
    switch($_GET['categorie']) {
        case 'mini-pelles': 
            $categorie = 'Mini-pelles';
            break;
        case 'dumpers':
            $categorie = 'dumpers';
            break;
        case 'rouleaux':
            $categorie = 'rouleaux';
            break;
    }
}

$categorie = htmlentities($categorie); //protection contre balises html nocives

mysql_connect("****", "***", "***") or die("erreur de connexion"); // Connexion à MySQL
mysql_select_db("***") or die("erreur de connexion base"); // Sélection de la base

$reponse = mysql_query("SELECT id, nom, descriptif, tarifht, tarif FROM articles WHERE categorie='".mysql_real_escape_string($categorie)."'");

?>


Puis les liens pour le menu que je ne vais pas mettre, et enfin les variables:

<?php while ($donnees = mysql_fetch_array($reponse)) {?>
<?php	echo $donnees[nom];?>
<?php	echo $donnees[id]; ?>
<?php
}
?>


Voila, si tu pouvais me donner la solution, je te ferai un gros bisou pour 2009 (avec la langue XD)
0
zoby44 Messages postés 868 Statut Membre 199
 
Pourquoi tu met <?php ?> à chaque ligne quand tu affiche menu ?!!
<?php while ($donnees = mysql_fetch_array($reponse)) 
{
echo $donnees[nom];
echo $donnees[id]; 
echo '<a href="traitement.php?supprimer='.$donnees['id'].'">Supprimer</a>';
}
?>


Et dans traitement.php

if (isset($_GET['supprimer']))
{
$sql = mysql_query('DELETE FROM articles WHERE id="'.$_GET['supprimer'].'"');

// Redirection si il y a besoin
header('Location: '.$_SERVER['http_referer']);
}
0
graffx Messages postés 7513 Date d'inscription   Statut Contributeur Dernière intervention   1 976
 
Merci a toi, c' était plus simple que ca paraissait mais j' aurai pas trouvé, me reste plus qu' a adapter.

Sinon petite question aussi et j' arrete de t embeter ^^:

Si je veux faire une section "modifier une fiche", tu me conseille quoi?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
zoby44 Messages postés 868 Statut Membre 199
 
La même chose :
<?php while ($donnees = mysql_fetch_array($reponse)) 
{
echo $donnees[nom];
echo $donnees[id]; 
echo '<a href="traitement.php?supprimer='.$donnees['id'].'">Supprimer</a>';

echo '<a href="traitement.php?modif='.$donnees['id'].'">Modifier</a>';
}
?>


Et dans traitement.php

if (isset($_GET['supprimer']))
{
$sql = mysql_query('DELETE FROM articles WHERE id="'.$_GET['supprimer'].'"');

// Redirection si il y a besoin
header('Location: '.$_SERVER['http_referer']);
}

if (isset($_GET['modif']))
{
    //Script avec formulaire pour modifier
}


Pour la gestion de bdd, tu peux aller faire un tour ici : https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/914508-ecrivez-des-donnees#ss_part_2
ça t'apprend a modifier/supprimer tout ce qu'il y a dans une bdd et c'est très bien expliqué
0
graffx Messages postés 7513 Date d'inscription   Statut Contributeur Dernière intervention   1 976
 
kikoo,

j' ai resolu une partie du souci grace a toi, mais j' ai un gros souci que voila.

j' ai reparti les variables 'nom' 'id' 'lien_supprimer' dans un tableau 1ligne/3colonnes

le résultat en image:

http://mickael.piot.free.fr/attente.gif

J' ai réparti ton code comme ceci:

<table width="1000" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td height="100" valign="top"><div align="center">
      <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://fpdownload2.macromedia.com/get/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="500" height="100">
        <param name="movie" value="../images/header/logo.swf" />
        <param name="quality" value="high" />
        <embed src="../images/header/logo.swf" quality="high" pluginspage="https://get.adobe.com/flashplayer/" type="application/x-shockwave-flash" width="500" height="100"></embed>
      </object>
    </div></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td background="../images/middle/mh.gif"><img src="../images/blank_bleu.gif" width="21" height="2" /><span class="Style1">Bienvenue sur yaqu'alouer.com - le catalogue en ligne. </span></td>
  </tr>
  <tr>
    <td background="../images/middle/mh2.gif">&nbsp;</td>
  </tr>
  <tr>
    <td height="330" valign="top"><table width="1000" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td height="385" valign="top" background="../images/middle/mm.gif"><table width="900" border="0" align="center" cellpadding="0" cellspacing="0">
          <tr>
            <td height="20" valign="top" background="../images/middle/menuh.gif"><img src="../images/blank_bleu.gif" width="21" height="2" /><span class="Style4">Choisissez une cat&eacute;gorie </span></td>
          </tr>
          <tr>
            <td height="42" background="../images/middle/menum.gif"><table width="696" border="0" align="center" cellpadding="0" cellspacing="0">
              <tr>

			  
			  
                <td width="129"><div align="center"><a href="effacer.php?categorie=mini-pelles"><img src="../images/icones/minipelle_m.jpeg" width="70" height="70" border="0" /></a></div></td>
                <td width="95"><div align="center"><a href="effacer.php?categorie=dumpers"><img src="../images/icones/dumpers_m.jpeg" width="70" height="70" border="0" /></a></div></td>
                <td width="114"><div align="center"><a href="effacer.php?categorie=rouleaux"><img src="../images/icones/rouleaux_m.jpeg" width="93" height="56" border="0" /></a></div></td>
                <td width="76"><div align="center"><a href="effacer.php?categorie=groupes"><img src="../images/icones/groupes_m.jpeg" width="70" height="70" border="0" /></a></div></td>
                <td width="96"><div align="center"><a href="effacer.php?categorie=rotovateurs"><img src="../images/icones/rotovateur.jpeg" width="70" height="70" border="0" /></a></div></td>
                <td width="91"><div align="center"><a href="effacer.php?categorie=chargeuses"><img src="../images/icones/chargeuses.jpeg" width="70" height="70" border="0" /></a></div></td>
                <td width="95"><div align="center"><a href="effacer.php?categorie=nacelles"><img src="../images/icones/nacelles.jpeg" width="70" height="70" border="0" /></a></div></td>
              </tr>
              <tr>
                <td><div align="center"><a href="effacer.php?categorie=camionbennes"><img src="../images/icones/camionbennes_m.jpeg" width="70" height="70" border="0" /></a></div></td>
                <td><div align="center"><a href="effacer.php?categorie=remorques"><img src="../images/icones/remorques_m.jpeg" width="70" height="70" border="0" /></a></div></td>
                <td><div align="center"><a href="effacer.php?categorie=petitoutillage"><img src="../images/icones/petitoutillage_m.jpeg" width="70" height="70" border="0" /></a></div></td>
                <td><a href="../articles.php?categorie=stockavendre"><img src="../images/icones/stock_m.jpeg" width="70" height="70" border="0" /></a></td>
              </tr>
            </table></td>
          </tr>
          <tr>
            <td height="19" background="../images/middle/menub.gif">&nbsp;</td>
          </tr>
        </table>
          <br />
          <table width="900" border="0" align="center" cellpadding="0" cellspacing="0">
            <tr>
              <td height="20" background="../images/middle/menuh.gif">&nbsp;</td>
            </tr>
            <tr>
              <td height="52" valign="top" background="../images/middle/menum.gif"><p><table width="617" border="1" align="center" cellpadding="1" cellspacing="1">
                <tr>
                  <td><?php while ($donnees = mysql_fetch_array($reponse)) 
{
echo $donnees[nom];
?>

</td>
                  <td>
				  
<?php
echo $donnees[id];
?>

</td>
                  <td><?php echo '<a href="traitement.php?supprimer='.$donnees['id'].'">Supprimer</a>\n';
}
?></td>
                 </tr>
              </table>

</td>
            </tr>
            <tr>
              <td height="19" background="../images/middle/menub.gif">&nbsp;</td>
            </tr>
          </table>
          <br /></td>
      </tr>
    </table></td>
  </tr>
</table>
<table width="1000" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <td height="50" background="../images/bas/bas.gif">&nbsp;</td>
  </tr>
</table>


J' ai tout essayé je ne comprend pas ce que l' on voit sur la photo, la trosieme cellule ne fait qu' un avec la premiere de la seconde ligne.

Mille bisous a celui qui trouve le bug :'(
0