Enregistrement MySQL non ordonnée

Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   -  
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Pouvez-vous m'aider à résoudre mon problème svp ?
Lorsque j'envoie les infos à MySQL, tout vas bien sauf qu'après un laps de temps, les enregistrements ne sont pas ordonnés :
<?php
include("conf.php"); include("fonctions.php"); include("verif.php");
$delai=0; 
$url='DernNews.php';

$db = mysql_connect('***', '***', '***');
mysql_select_db('***',$db);
$sql = 'SELECT DATE_FORMAT(DateJour, "%d-%m-%Y") AS DateFr, NewsJour FROM Web_Nouvelles ORDER BY DateFr DESC';
mysql_query('SET NAMES utf8');
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

//Ajout dans la table si bouton "submit" est cliqué
if (isset($_POST['button'])){ $add=mysql_query("INSERT INTO Web_Nouvelles SET DateJour=now(), NewsJour='$NewsJour'"); header("Refresh: $delai;url=$url");}

mysql_close();
?>


Voyez le dernier enregistrement :
30 	2011-07-18 16:44:06 	super, tu fais quoi ?
29 	2011-07-18 16:43:41 	je vais bien et toi ?
28 	2011-07-18 16:42:45 	comment tu vas ?
27 	2011-07-18 16:42:25 	c'est encore moi
26 	2011-07-18 16:42:20 	salut
31 	2011-07-18 16:44:57 	je code un bidule

Pouvez-vous m'aider svp ?
A voir également:

16 réponses

MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Salut,
Essai tout simplement ça
$sql = 'SELECT * FROM Web_Nouvelles ORDER BY DateFr DESC';

Et tu défini ce que tu veux écrire.
0
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
 
Merci MastercroW ^^

Je peux demander un autre service svp ?

Dans mon body, si je voudrais ajouter un lien
<a href="">Supprimer</a>
Comment je peux supprimer un enregistrement ?
Voici mon code dans mon body :
<?php while($data = mysql_fetch_assoc($req)) {echo '<b><u>'.$data['DateFr'].' :</u></b>&nbsp;&nbsp;&nbsp;| <a href="#">Supprimer</a><br>'.$data['NewsJour'].'<hr>';} ?>
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
En php c'est très simple pour supprimé une ligne.
C'est la fonction delete (supprimé en anglais).

$id =$_GET['id'];  
mysql_query("DELETE FROM Web_Nouvelles WHERE NewsJour= '$id' ");  

<?php while($data = mysql_fetch_assoc($req)) {echo '<b><u>'.$data['DateFr'].' :</u></b>&nbsp;&nbsp;&nbsp;| <a href="#?id='.$data['NewsJour'].'">Supprimer</a><br>'.$data['NewsJour'].'<hr>';} ?>
 
0
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
 
Oui, mais dans le <a href=""></a> comment le lui dire ? >O<
0

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

Posez votre question
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
En 2 minutes, si cela est pour toi et je pense c'est le cas, tu peux faire un genre de ceci : (c'est un peu salle)
<?php 
if (empty($_GET['id'])) 
{ 
} 
else 
{ 
$id =$_GET['id'];   
mysql_query("DELETE FROM Web_Nouvelles WHERE NewsJour= '$id' ");  
} 
?> 
<?php while($data = mysql_fetch_assoc($req)) {echo '<b><u>'.$data['DateFr'].' :</u></b>   | <a href="#?id='.$data['NewsJour'].'">Supprimer</a><br>'.$data['NewsJour'].'<hr>';} ?> 


Le mieux c'est quand même de faire un bouton avec un post.
0
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
 
Il ne supprime pas :s
excuse moi MastercroW mais je débute grave en php et c'est mon tout premier script. J'ai besoin de ton aide :/

Je te présente tout mon code :
<?php
include("conf.php"); include("fonctions.php"); include("verif.php");
$delai=0; 
$url='DernNews.php';

$db = mysql_connect('***', '***', '***');
mysql_select_db('***',$db);
$sql = 'SELECT DATE_FORMAT(DateJour, "%d-%m-%Y à %H:%i:%s") AS DateFr, NewsJour FROM Web_Nouvelles ORDER BY DateFr DESC';

mysql_query('SET NAMES utf8');
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

//Ajout dans la table si bouton "submit" est cliqué
if (isset($_POST['button'])){ $add=mysql_query("INSERT INTO Web_Nouvelles SET DateJour=now(), NewsJour='$NewsJour'"); header("Refresh: $delai;url=$url");}

//Supprimer un enregistrement dans la table avec <a href="">
if (empty($_GET['id'])) {$id =$_GET['id']; mysql_query("DELETE FROM Web_Nouvelles WHERE NewsJour= '$id' ");} 

mysql_close();
?>

<?php while($data = mysql_fetch_assoc($req)) {echo '<b><u>'.$data['DateFr'].' :</u></b>&nbsp;&nbsp;&nbsp;| <a href="#?id='.$data['NewsJour'].'">Supprimer</a><br>'.$data['NewsJour'].'<hr>';} ?>
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
J'ai moi aussi débuté et grâce à ce forum j'ai avancé, donc je ferais un peu pareil !
Essai sans le : mysql_close();
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Et en mettant ceci :
if (empty($_GET['id'])) {$id =$_GET['id']; mysql_query("DELETE FROM Web_Nouvelles WHERE NewsJour= ".$id." ");} 
0
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
 
Non toujours pas :s
Il ne fait rien !
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
As-tu essayer la deuxième solution ?
0
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
 
Oui :s j'essais encore pour voir si j'ai fais erreur mais non, il supprime pas, il me met juste dans le lien de la barre d'adresse lien?id=comment tu vas ?

if (empty($_GET['id'])) {$id =$_GET['id']; mysql_query("DELETE FROM Web_Nouvelles WHERE NewsJour= ".$id." ");}

avec et sans

mysql_close();
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Changeons les règles du jeux ! On va prendre un bouton
<?php
if(isset($_POST['envoie'])){
$delete = $_POST['delete'];
mysql_query("DELETE FROM Web_Nouvelles WHERE NewsJour= '".$delete."' ");
echo 'Succes message delete !';
}
?>
<form action="#" method="POST">

<select name="delete">
<option>Choisir la nouvelle à supprimer</option>
<?php $recherches=mysql_query('SELECT * FROM Web_Nouvelles ');while($applique=mysql_fetch_assoc($recherches)) {?><option name="name" ><?php echo $applique['NewsJour']; ?></option><?php }?>
</select>

<button type="submit" name="envoie">Continuer</button>

</form>
0
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
 
La liste déroulante est vide, seul le mot "Choisir la nouvelle à supprimer" y est !
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Quelques erreurs connes que j'ai moi aussi effectués :
- Es-tu vraiment connecter à ta base de données ? (PHP)
- Es-tu vraiment en localhost ?
- Es-tu trompé dans les champs de ta base de données ?
0
MastercroW Messages postés 1094 Date d'inscription   Statut Membre Dernière intervention   163
 
Essai ça si sa ne marche toujours pas :
<?php $recherches=mysql_query('SELECT * FROM Web_Nouvelles ');while($applique=mysql_fetch_assoc($recherches)) {?><option name="delete" ><?php echo $applique['NewsJour']; ?></option><?php }?>
0
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
 
non, pareil.
Je suis bien connecté à ma base et j'arrive à enregistrer dans ma table...
Même avec celui-ci il n'y a rien dans la liste
0
Sinistrus Messages postés 1010 Date d'inscription   Statut Membre Dernière intervention   17
 
Bonjour MastercroW,

Voici le code au grand complet et je sollicite ton aide pour afficher les éléments de la table dans la liste déroulante. En effet, dans le <select> il y a la première ligne "Choisir la nouvelle à supprimer" qui lorsque je l'ajoute comme enregistrement dans ma table, se supprime lorsque je clique sur le bouton supprimer.
Mon problème est que les enregistrements de la table ne s'affichent pas dans ma liste déroulante.
Sinon ton code marche avec succès à l'exception de ce beug.
Peux tu m'aider encore une fois ?

<?php
$delai=0; 
$url='DernNews.php';

$db = mysql_connect('*****', '*****', '*****');
mysql_select_db('*****',$db);
$sql = 'SELECT DATE_FORMAT(DateJour, "%d-%m-%Y à %H:%i:%s") AS DateFr, NewsJour FROM Web_Nouvelles ORDER BY DateFr DESC';
//$sqld= 'SELECT DATE_FORMAT(DateJour, "%d-%m-%Y à %H:%i:%s") AS DateFr, NewsJour FROM Web_Nouvelles ORDER BY DateFr DESC';

mysql_query('SET NAMES utf8');
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

//Ajout dans la table si bouton "submit" est cliqué
if (isset($_POST['button'])) {$add=mysql_query("INSERT INTO Web_Nouvelles SET DateJour=now(), NewsJour='$NewsJour'"); header("Refresh: $delai;url=$url");}

//Supprimer dans la table si liste choisie et bouton cliqué
if(isset($_POST['envoie'])){$delete = $_POST['delete']; mysql_query("DELETE FROM Web_Nouvelles WHERE NewsJour= '".$delete."' "); header("Refresh: $delai;url=$url");}

mysql_close();
?>

<form id="form1" name="form1" method="post" action=""><table width="795" border="0" align="center" cellpadding="0" cellspacing="5">
      <tr>
        <td width="160" valign="top">Supprimer la nouvelle :</td>
        <td width="620">
<select name="delete" size="5" style="width:100%">
<option>Choisir la nouvelle à supprimer</option>
<?php $recherches=mysql_query('SELECT * FROM Web_Nouvelles ORDER BY DateJour DESC');while($applique=mysql_fetch_assoc($recherches)) {?>
<option name="name" ><?php echo $applique['NewsJour']; ?></option><?php }?>
</select>
        </td>
      </tr>
      <tr>
        <td>&nbsp;</td>
        <td><input type="submit" name="envoie" id="envoie" value="Supprimer" /></td>
      </tr>
    </table>
    </form>

<?php while($data = mysql_fetch_assoc($req)) {echo '<span class="Description"><b><u>'.$data['DateFr'].' :</u></b></span><br>'.$data['NewsJour'].'<hr>';} ?>


Configuration: Windows 7 / Firefox 5.0
0