Problème pour modifier un table sql

cs_jzel Messages postés 5 Date d'inscription dimanche 5 juin 2005 Statut Membre Dernière intervention 30 juillet 2007 - 30 juil. 2007 à 16:30
Tenqi Messages postés 10 Date d'inscription jeudi 26 juillet 2007 Statut Membre Dernière intervention 9 août 2007 - 3 août 2007 à 21:36
Bonjour à tous,

Voila j'ais un petit soucis avec une page que j'ai crée. Le but de mon script est de lister les tutoriaux présent sur mon site (dans la DB). et (avec un lien..) pouvoir les modifier.

Voici le lien de la page : Liste_tutorial.php -> vers la page de modification (modif_tutorial.php) :

echo

" <td width= "80" align="center" valign="top" bgcolor="#5F5F5F"> . $tableau
[ "id"
].<italique>"">Modifier </td> \n "
;

Voici maintenant le page Modif_tutorial.php (qui ne marche pas comme je voudrai) :

<?

include
("config_connect.php"
);

/// ACTION ///
$act
=$_GET
['act'
];

if
($act
= = 'sub'
)
{

// Modification
if
($_POST
['submit'
]
== "Modifier"
)
{
$id
=$_POST
['id'
];
$titre_t
= $_POST
[ 'titre'
];
$categorie
=$_POST
['categorie'
];
$hebergeur
= $_POST
[ 'descr'
];
$descr
=$_POST
['tuto'
];
$query
"UPDATE breakboard SET titre' $titre ',categorie ='$categorie',descr= ' $descr ',tuto =' $tuto' WHERE id = $id "
;
mysql_query
($query
,$connexion
);

}

// Supression
if
($_POST
['submit'
]
= = "Supprimer"
)
{
$id
=$_POST
['id'
];
$result1
= mysql_query
( "delete from ma_table where id =""
.$id
."""
,$connexion
);

}

}

// Requetes
$resultat_sql
= mysql_query
("SELECT * FROM ma_table"
,$connexion
);
$nombreligne
= mysql_num_rows
($resultat_sql
);

?>

----
Titre, Categorie, Tutorial, Description,


<?
// Affichage
$i= 0;
while ($i<$nombreligne)
{
// Variable de la news
$id =mysql_result($resultat_sql,$i, \"id\" );
$titre = mysql_result ($resultat_sql,$i,\"titre\");
$categorie = mysql_result($resultat_sql,$i, \"categorie\" );
$tuto = mysql_result ($resultat_sql,$i,\"tuto\");
$descr = mysql_result($resultat_sql,$i, \"descr\" );
// Affichage en ligne
echo'<form method = \"post\" name=\"form\" action=\"modif_tut.php?act=sub\">----
.$id.'" type="hidden">
.$titre.'">,
.$categorie.'">,
.$tuto.'">,
<textarea name="texte" rows="6" cols="10">'.$descr.'</textarea>,
----
,
</form>';
$i ++;}
?>



Le problème 1 : Je voudrais que lorsque je clique sur le bouton modifier de ma liste des tutoriaux, il m'affiche juste celui demander (selon ID).. Alors qu'il m'affiche tous les tutoriaux présent dans ma base.

Le problème 2 : Quand je clique sur modifier (sur la page modif_tutorial.php?id =" ) Au lieu de modifier la requête, il s'occupe de l'effacer

Voila donc suite a ces problème me voila bloqué.. Ai-je été assez claire ??

Merci de votre aide
++

2 réponses

Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
30 juil. 2007 à 17:00
Hello,

1) je ne vois pas le problème ? tu fais une boucle pour afficher chaque ligne de résultat. ta phrase n'est pas claire, j'ai sans doute mal compris...

2) ben, ta requête c'est un DELETE, normal que ça efface, non ???

tu devrais peut-être lire des tutoriaux pour apprendre le php avant de te lancer...
0
Tenqi Messages postés 10 Date d'inscription jeudi 26 juillet 2007 Statut Membre Dernière intervention 9 août 2007
3 août 2007 à 21:36
Hello,


ton premier problème vient de ta requête. Actuellement, tu prend toutes les données de ta table :
  $resultat_sql
= mysql_query
( "SELECT * FROM ma_table"
,$connexion
);

Or toi tu ne veux que la ligne de ta table qui correspond à l'id passé
en paramètre (en GET). Il te faut donc récupérer cet id en GET :

  $id = $_GET['id'];

et ensuite faire la requête sql sur cet id

  $resultat_sql
= mysql_query
('SELECT * FROM ma_table WHERE id = ' . $id
,$connexion
);

voilou

Numériquement,
0
Rejoignez-nous