Affichage client supprimer Sql

Fermé
Profil bloqué - 8 juin 2010 à 15:35
 Profil bloqué - 16 juin 2010 à 16:48
Bonjour,
Je cherche une façon de voir dans ma base de donnée ,les clients que j'ai supprimer pour affiliée leur numéro interne !

mes clients sont identifier par un champ id

avez vous une solution ?


10 réponses

Breub62 Messages postés 2989 Date d'inscription lundi 7 juin 2010 Statut Membre Dernière intervention 17 avril 2014 369
8 juin 2010 à 15:37
Si tu les as supprimés ils ne sont plus dans ta base...

Ou je comprends mal
0
Templier Nocturne Messages postés 7734 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 21 mai 2016 1 102
8 juin 2010 à 15:37
je ne comprend pas... tu veux récupérer des champs que tu as supprimés dans ta BDD ?
0
Profil bloqué
8 juin 2010 à 15:42
en faite j'ai une liste de client dans ma base de donnée client, exemple :

id nom prenom
1 toto Richard
2 bobo Olivier
3 test test

il m'arrive de créer des client test pour teste mon logiciel , mes après pour sortir des stats de clients etc ,ce n'est pas l'idéal ....
donc j'ai supprimer mon client id='3' ! imaginons je crée un nouveau client jojo lorie ! sa ferra :

id nom prenom
1 toto Richard
2 bobo Olivier
4 jojo lorie

je voudrai pouvoir sortir le numéro 3 qui n'est pu la !
0
Breub62 Messages postés 2989 Date d'inscription lundi 7 juin 2010 Statut Membre Dernière intervention 17 avril 2014 369
8 juin 2010 à 15:44
C'est-à dire faire :

id nom prenom
1 toto Richard
2 bobo Olivier
3 jojo lorie


???
0

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

Posez votre question
Templier Nocturne Messages postés 7734 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 21 mai 2016 1 102
8 juin 2010 à 15:46
ben il est déjà sorti puisqu'il est plus là...

si tu veux rajouter un client à la place, tu fait une requète renseignant un id de 3
0
Profil bloqué
8 juin 2010 à 15:46
c'est a dire :

<?php


// on se connecte à MySQL
$db = mysql_connect('localhost', 'toto', 'toto');

// on sélectionne la base
mysql_select_db('base',$db);


// on crée la requête SQL
$sql = "
SELECT *
FROM client
WHERE id BETWEEN '1' AND '1000'
;";

// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

// on fait une boucle qui va faire un tour pour chaque enregistrement
while($data = mysql_fetch_assoc($req))
{
// on affiche les informations de l'enregistrement en cours
echo '<table border="0" >';
echo '<TR><TD></TD>
<TD>
</i></a><br></TD><TD>'.$data['id'].'</TD>
</TR></table>';

}
// on ferme la connexion à mysql
?>

a partir de sa faire que je puisse afficher : 3
comme quoi le 3 est libre !
0
Templier Nocturne Messages postés 7734 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 21 mai 2016 1 102
8 juin 2010 à 15:46
je ne suis toujours pas sûr d'avoir compris en fait :/
0
Breub62 Messages postés 2989 Date d'inscription lundi 7 juin 2010 Statut Membre Dernière intervention 17 avril 2014 369
8 juin 2010 à 15:51
Oui je crois que j'ai compris

Un truc du genre :
SELECT max(id) from client</code
pour récupérer la valeur max

<code>for(int i=0; i< max(id);i++) $tab += i 



Enfin la syntaxe c'est pas ça mais je pense que c'est dans l'idée...
0
Profil bloqué
9 juin 2010 à 15:35
je voi l'idée du for(int i=0; i< max(id);i++) $tab += i
me je voi pa pk $tab += i ! ??
0
Breub62 Messages postés 2989 Date d'inscription lundi 7 juin 2010 Statut Membre Dernière intervention 17 avril 2014 369
9 juin 2010 à 15:42
En gros il faudrait stocker chaque valeur libre dans une nouvelle case du tableau. Mais moi et les tableaux ça fait 2...
0
Profil bloqué
16 juin 2010 à 16:48
oui , je pourrai enregistrer les id qui sont supprimer , mais bon il aurai fallu y pense avant,je ne vais pas le faire maintenant ^^
0
Templier Nocturne Messages postés 7734 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 21 mai 2016 1 102
Modifié par Templier Nocturne le 8/06/2010 à 16:06
je crois qu'il demande plutot de comment faire pour afficher les champs vide (id = 3 dans son exemple)

dans ce cas

while ($x < $xmax) //on fait ça le nombre de fois qu'il faut ($xmax fois))
{
$sql = "
SELECT *
FROM client
WHERE id [egal] '".$x."''
;";

// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
foreach($req as $index => $valeur) {
if (empty($req))
{
echo champ vide'
}
else
{
echo $req
}
}

le code n'est probablement pas parfait et les fonctions utilisées le sont peut être mal, mais en gros, ça fonctionne
0
Profil bloqué
9 juin 2010 à 15:36
oui , c'est sa !
pk tu fais un while ($x< $max=
a quoi correspond $x ?
0
Templier Nocturne Messages postés 7734 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 21 mai 2016 1 102
9 juin 2010 à 17:03
en fait c'est un compteur.

j'ai juste oublié de l'incrémenter ^^'

donc avant la boucle, tu met $x = 0 et en 1ere ligne de boucle, tu l'incrémente

désolé de l'oublis
0
Profil bloqué
9 juin 2010 à 17:37
c'est pas grave !
tkt pas j'avais compris que c'etais un compteur ,je suis developpeur ^^
mais je comprenais pas la phrase !
merci de ta répons.
0
Templier Nocturne Messages postés 7734 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 21 mai 2016 1 102
9 juin 2010 à 18:10
de rien :)
0
Salut,

S'il est réellement important de pouvoir gérer les clients supprimés, il faudra faire entrer en jeu une nouvelle table "ClientSupprimé" ou introduire un booleén "Supprimé" dans la table Client

Si c'est juste une histoire esthétique, c'est pas très très grave. Il y a plein de systèmes où le chrono ressemble à de l'emmental et ça fonctionne sans souci, sans s'en rendre compte dirais-je. Les plaques d'immatriculation par exemple. Quand j'ai crashé ma Clio, elle est partie à la casse. Dès lors, quelle importance avait donc l'absence de mon n° de plaque dans le chrono ? ... Aucune !

Donc, rassure-toi : il n'est pas nécessaire de te prendre la tête à inventer une mécanique de recyclage d'ID. Du coup, tu t'économises des heures et des heures de recherche de "trou" !
0