Gestion de news

Répondre
Folken
le 03/05/2005 à 12:00
Folken
Voila, j'ai réalisé uen gestion de news toute simple.
Maintenant je voudrais tout dabord y ajouter une page pour supprimer une news grace a l'id.

DOnc j'ai une page index.php, news.php, insert_news.php et la je vien de faire une del_news.php...
dans news.php j'ai ajouter une case à mon tableua ou j'intégre une image .png entouré de balise...
-> je voudrai que lorsque japui sur l'image ( la croix la news se suprime grace a l'id) , bref la je vous aprend rien

j'ai donc un truc du genre <a href="#ancre" onClick="document....href=\'http://url\del_news.php?id..'"> <img></a>
//la je demande ma page del je remonte en haut de page et sa devrai supprimer!
mon ancre se trouve en haut de la page.

cependant rien ne se passe... j'éditeré tt a l'heure le code de del.php (la je suis a mon stage,...c'est ma pause...)
LA GLOBULE
le 03/05/2005 à 13:21
LA GLOBULE
<a href="#ancre" onClick="document....href=\'http://url\del_news.php?id..'"> <img></a>

??

Pourquoi ne fais tu pas un simple :
<a href="http://url/del_news.php?id=3">ton image</a>

Et dans del_news.php, tu fais un simple :

DELETE FROM table WHERE id=3

suivi d'une redirection vers ton news.php ? (via un header)
Folken
le 04/05/2005 à 08:16
Folken
<u>Voila del.php</u>

del.php
<?php 
$baz = mysql_connect ('localhost', 'root', '');
mysql_select_db('news', $baz);

$erreur='probleme.';
if (isset($_GET['id'])) {
$sql = 'SELECT count(*) FROM news WHERE id="'.$_GET['id'].'"';
$req = mysql_query ($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_array($req);
if ($data[0] == 1) {
$sql ='DELETE FROM news WHERE id="'.$_GET['id'].'"';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
}
}
header('Location: index.php');
exit();
?>


<u>et news.php</u>
news.php
<?php
// on se connecte à notre base
$baz = mysql_connect ('localhost', 'root', '');
mysql_select_db('news', $baz);

// lancement de la requête. on sélectionne les news que l'on va ordonner suivant l'ordre "inverse" des dates (de la plus récente à la plus vieille : DESC) tout en ne sélectionnant que le nombre voulu de news à afficher (LIMIT)
$sql = 'SELECT auteur, titre, date, texte_news FROM news ORDER BY date DESC;';

// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
$req = mysql_query($sql) or die('Erreur SQL !<br> Vérifier que votre base et/ou votre news est bien définie'.$sql.'<br>'.mysql_error());

// on compte le nombre de news stockées dans la base de données
$nb_news = mysql_num_rows($req);

if ($nb_news == 0) {
echo 'Il n&acute;y a pas de news dans la base de donnée, dirige-toi sur la page insert_news.php.';
}
else {
// si on a au moins une news, on l'affiche
while ($data = mysql_fetch_array($req)) {

// on décompose la date
sscanf($data['date'], "%4s-%2s-%2s %2s:%2s:%2s", $an, $mois, $jour, $heure, $min, $sec);

// on affiche les résultats
?><center><table border="2" bgcolor="#45CBE8" width="500" cellpadding="5">
<tr>
<th><?echo 'Auteur ';?></th>
<td><?echo stripslashes(htmlentities(trim($data['auteur'])));?></td>
<th><?echo 'Date ';?></th>
<td><? echo $jour , '/' , $mois , '/' , $an;?></td>
</tr>
<tr>
<td colspan="2">&nbsp; <a href="#ancre" onClick="document.location.href=\'del_news.php?id='.$id.'\'">
<img src="C:\Program Files\EasyPHP1-8\www\news/off.png" border="0" alt="Supprimer"></a></td>
<th ><?echo 'Heure ';?></th>
<td><? echo $heure , ':' , $min , ':' , $sec;?></td>
</tr>

<tr>
<th><?echo 'Titre ';?></th>
<td><? echo stripslashes(htmlentities(trim($data['titre'])));?></td>
<td colspan="2">&nbsp;</td>
</tr>
<tr>
<th valign="top"><?echo 'Contenu ';?> </th>
<td colspan="3" > <? echo nl2br(stripslashes(htmlentities(trim($data['texte_news']))));?></td>
</tr>
</table><br></center><?
}
}
// on libère l'espace mémoire alloué à cette requête
mysql_free_result ($req);

// on ferme la connexion à la base de données
mysql_close ();
?>


Voili voulou m base s'appelle news et mon champs id:id pas plus simple donc j'ai vérifié y apas d'erreur de frappe ou autres (ben koi l'erreur pourait etre juste sa...j'ésaie de voir tout les types de problémes)
zebden
le 04/05/2005 à 10:41
zebden
ET le problème ? une erreur ?
zebdinou pour les intimes / Blog : http://www.zebden.fr
Folken
le 06/05/2005 à 08:35
Folken
Le problème est que strictement RIEN ne se passe.
Probléme dans le code ou...?
Meeper
le 06/05/2005 à 08:51
Meeper
salut c'set pas a cause de ton if dans del_news ??
if data[0]==1
{
}
t'as essayer en virant ce test ?
Folken
le 06/05/2005 à 08:57
Folken
Eh bien , il faut quand même vérifié s'il y a une news avant de supprimer mais c'est pas bête , je vias essayé!
LA GLOBULE
le 09/05/2005 à 08:51
LA GLOBULE
Ben le $id de ton lien n'est pas pris en compte puisque qu'il ne figure dans aucun echo de php.

Au passage, je ne vois pas du tout l'interet du javascript, vu que ton javascript, c'est un lien tout con.
Folken
le 10/05/2005 à 10:15
Folken
Admettons que je vire l'ancre pour laissé place a un lien tout con avec un header...comment je donne l'ip de la news a supprimer à mon ficher del_news.php ???
Répondre
LoadingChargement en cours