Vous n'êtes pas identifié(e).
Youpi ça marche! J'ai trouvé mon erreur! en fait dans ma requete sql j'ai oublié de modifié date par dateup!
Ben oui comme j'ai changé le nom du champs suite à une remarque plus haut.
Maintenant le code qui fonctionne est celui-ci:
$serveur = mysql_connect (HOST, username, PASSWORD);
mysql_select_db (DATABASE);
if (!$serveur)
{
die('Non connecté : ' . mysql_error());
}
else
{
$query = "SELECT * FROM applis_tbl ORDER BY dateup DESC";
$result = mysql_query($query);
while($row = mysql_fetch_row($result)){
$Num = $row[0];
$Nomapp = $row[1];
$Urlapp = $row[2];
$Nomclient = $row[3];
$Date = $row[4];
echo "<tr align=center>\n
<td>".$Num."</td>\n
<td><a href=\"$Urlapp\">".$Nomapp."</a></td>\n
<td>".$Urlapp."</td>\n
<td>".$Nomclient."</td>\n
<td>".$Date."</td>\n
</tr>\n";
}
}
mysql_close();
?>
Maintenant dernière étape du projet ajouter un bouton supprimer en fin de chaque ligne pour supprimer l'enregistrement de la bdd mais aussi le fichier uploadé dans le répertoire...
J'ai l'impression que ca va être le truc le plus complexe à faire...
Vous avez des idées?
Hors ligne
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Ok bon j'ai essayé d'ajouter cette fonction de suppression mais je ne sais pas du tout comment la créer...
J'ai déjà ajouté l'ajout automatique d'un bouton "supprimer" qui renvoi à un srcipt delete.php comme ceci:
Le bouton apparait bien en fin de ligne et renvoi bien sur mon script delete.php mais maintenant je ne sais pas trop comment dire dans ce script, supprimer l'enregistrement de la bdd ainsi que le fichier dnas son répertoire.
J'ai écris ceci mais rien ne semble fonctionner:
Pouvez vous me guider sur cette partie? merci
if( isset($_POST['del'])) {
$delfichier = $dossier. $fichier;
if( file_exists ( $delfichier)){
if(unlink($delfichier))
echo '<script type="text/javascript">
alert("Le fichier $fichier a été supprimé avec succès");
document.location.href = "http://192.168.0.11/Android/index.php";
</script>';
else
echo '<script type="text/javascript">
alert("Erreur lors de la suppression du fichier $fichier");
document.location.href = "http://192.168.0.11/Android/index.php";
</script>';
}
else
echo '<script type="text/javascript">
alert("Le fichier $fichier n existe pas");
document.location.href = "http://192.168.0.11/Android/index.php";
</script>';
}
?>
Hors ligne
Alors en fait j'ai décidé d'y aller étape par étape dans le fichier delete.php
J'essaye d'abord de supprimer l'enregistrement de la base avec ce code qui fonctionne mais dans ma requete sql a la place de '1' j'aimerai faire appel à la variable $Num contenue dans mon index.php.
Quand je me cette variable rien ne marche.
<?php
include (index.php);
define("HOST", "localhost");
define("username", "****");
define("PASSWORD", "*****");
define("DATABASE", "Android");
$serveur = mysql_connect (HOST, username, PASSWORD);
mysql_select_db (DATABASE);
if (!$serveur)
{
die('Non connecté : ' . mysql_error());
}
else
{
$suppr = "DELETE FROM applis_tbl WHERE id = '1'";
mysql_query($suppr);
echo '<script type="text/javascript">
alert("Le fichier $fichier a été supprimé avec succès");
document.location.href = "http://192.168.0.11/Android/index.php";
</script>';
}
mysql_close();
?>
Hors ligne
<form name="del" action="delete.php?id=$num" method="post" target="_parent">
Ainsi tu peux le récupérer dans $_GET['id'] et ton script pourra aussi être appelé via un lien <a>.
Hors ligne
Tu veux dire comme ça?
index.php
delete.php
define("HOST", "localhost");
define("username", "***");
define("PASSWORD", "****");
define("DATABASE", "Android");
$num = $_GET['id'];
$serveur = mysql_connect (HOST, username, PASSWORD);
mysql_select_db (DATABASE);
if (!$serveur)
{
die('Non connecté : ' . mysql_error());
}
else
{
$suppr = "DELETE FROM applis_tbl WHERE id = ".$num."";
mysql_query($suppr);
echo '<script type="text/javascript">
alert("Le fichier $fichier a été supprimé avec succès");
document.location.href = "http://192.168.0.11/Android/index.php";
</script>';
}
mysql_close();
?>
Avec ce code ca ne fonctionne pas non plus
Hors ligne
Essayes ceci :
Hors ligne
J'ai pour réponse ceci:
DELETE FROM applis_tbl WHERE id = 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
Hors ligne
Bonjour essaye comme ceci
Evite de te contenter de recopier ce qu'on te donne et essaye de comprendre un peu. Merci
Dernière modification par Jc (24-02-2011 14:43:43)
POO PHP+Ajax en MVC avec PDO et Bases de données épaisses : What else?
Hors ligne
Si cet identifiant est un entier, ce qui est souvent le cas, les quotes sont non seulement inutiles, mais contre-productives. Ça force le SGBD à caster la valeur de la colonne avant de la comparer.
Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy
Hors ligne
Bon je ne comprend toujours pas, j'ai retourné le problème dans tous les sens et j'en suis arrivé a la conclusion que le problème vient bien de l'appel de la variable $num car je l'ai remplacé par une valeur contenu dans la colonne et l'enregistrement est bien effacé...
Je suppose que mon appel de la variable $num dans ma requète sql de mon fichier delete.php est mal interfacé avec mon fichier index.php où la variable $num est déclaré.
delete.php
mysql_select_db (DATABASE);
if (!$serveur)
{
die('Non connecté : ' . mysql_error());
}
else
{
include (index.php);
$Num = $_GET['id'];
$suppr = "DELETE FROM applis_tbl WHERE id='$Num'";
mysql_query($suppr) or die(mysql_error());
echo '<script type="text/javascript">
alert("Appli supprimée avec succès !");
document.location.href = "http://192.168.0.11/Android/index.php";
</script>';
}
mysql_close();
?>
index.php
while($row = mysql_fetch_row($result)){
$Num = $row[0];
$Nomapp = $row[1];
$Urlapp = $row[2];
$Nomclient = $row[3];
$Date = $row[4];
echo "<tr align=center>\n
<td>".$Num."</td>\n
<td><a href=\"$Urlapp\">".$Nomapp."</a></td>\n
<td>".$Urlapp."</td>\n
<td>".$Nomclient."</td>\n
<td>".$Date."</td>\n
<td><form name=del action=delete.php?id=$num method=post target=_parent><input type=submit value=Supprimer></form></td>\n
</tr>\n";
}
}
mysql_close();
Hors ligne
Bon tu va rigoler, j'ai finalement pas testé l'affichage de cette variable car en relisant mon dernier post, je me suis aperçu que dans mon fichier index.php je fesai appel a la variable $num et dans mon delete.php à $Num.
J'ai donc rajouté la majuscule dans mon index.php et là miracle ça fonctionne!
Il va falloir que je sois plus méticuleux à l'avenir...
En tout cas merci pour ton conseil.
Maintenant il me reste plus qu'a supprimer le fichier uploadé et mon projet sera pratiquement fini!
Hors ligne
puisque que tu le commence ce projet, pourquoi ne pas utiliser PDO ?????
a++
Hors ligne