[PHP] msg d'erreur si saisie non valide

Résolu/Fermé
Matii_75 - 2 juin 2008 à 10:46
Matii_75 Messages postés 22 Date d'inscription lundi 26 mai 2008 Statut Membre Dernière intervention 12 février 2009 - 2 juin 2008 à 12:37
Bonjour,

J'ai divers formulaires, et je voudrais enrichir un peu le tout notamment en renvoyant un message d'erreur si l'identifiant (par exemple) saisi n'est pas valide (non présent dans la base, ou format non valide).

exemple pour la recherche d'identifiant

<form method="POST" action="recherche_id_ok.php">
<p>Identifiant : </p>
 <input type="text" name="id" size="20">
<input type="submit" value="rechercher">


$id=mysql_real_escape_string($_POST['id']);
$query = "SELECT id, source, date, mac, ip, epoch, texte FROM enregistrement WHERE id = $id;";
$result = mysql_query($query);


Si quelqu'un pouvait me mettre sur une piste ... merci

8 réponses

thecrazyspy Messages postés 413 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 13 novembre 2015 43
2 juin 2008 à 11:11
$query = "SELECT id, source, date, mac, ip, epoch, texte FROM enregistrement WHERE id = $id;";
$result = mysql_query($query);

while ($nbr=mysql_fetch_array($result))
{
$login=$nbr["lid"];

}
if ( $login == $id )
{
echo "ok";
}
else
{
echo "login incorrect";
}
else
{
echo "Mot de passe ou Login incorrect";
}
0
thecrazyspy Messages postés 413 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 13 novembre 2015 43
2 juin 2008 à 11:11
j'ai mis un else en trop le dernier ni est pas
0
Matii_75 Messages postés 22 Date d'inscription lundi 26 mai 2008 Statut Membre Dernière intervention 12 février 2009 1
2 juin 2008 à 11:22
En fait je me suis mal exprimé mais c'est surement sur le même principe, l'identifiant ce n'est pas pour se connecter à la base de données, c'est par exemple rechercher le client n°180 dans la base de données, et s'il n'y a pas de client n°180 alors message d'erreur ...
0
thecrazyspy Messages postés 413 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 13 novembre 2015 43
2 juin 2008 à 11:25
c'est la même chose

$query = "SELECT id FROM client WHERE id = $id;";
$result = mysql_query($query);

while ($nbr=mysql_fetch_array($result))
{
$client=$nbr["id"];
}
if ( $client != "" )
{
echo "client existe";
}
else
{
echo "aucun client ne correspond";
}
0

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

Posez votre question
Matii_75 Messages postés 22 Date d'inscription lundi 26 mai 2008 Statut Membre Dernière intervention 12 février 2009 1
2 juin 2008 à 11:33
Oui c'est bien la même chose, juste une petite subtilité, le résultat de ma requête est affiché dans un tableau, or quand la requête ne génère aucun résultat je me retrouve avec un table vide ... comment régler ça ?

<table>

<tr>
<th>Identifiant</th>
<th>SOURCE</th>
<th>Date d'enregistrement</th>
<th>Adresse MAC</th>
<th>Adresse IP</th>
<th>Epoch</th>
<th>Texte</th>

</tr>

<?php

include("fonctions.connect.php");

$connect_db = connect();

// Reception de la valeur
$id=mysql_real_escape_string($_POST['id']);

// Requete
$query = "SELECT id, source, date, mac, ip, epoch, texte FROM enregistrement WHERE id = $id;";
$result = mysql_query($query);

// Resultats

if($row = mysql_fetch_row($result))
{
$id = $row[0];
$source = $row[1];
$date = $row[2];
$mac = $row[3];
$ip = $row[4];
$epoch = $row[5];
$texte =$row[6];

echo "<tr>\n
<td>$id</td>\n
<td>$source</td>\n
<td>$date</td>\n
<td>$mac</td>\n
<td>$ip</td>\n
<td>$epoch</td>\n
<td>$texte</td>\n

</tr>\n";
}
else
{
echo"Cette identifiant n'est pas présent dans la table enregistrement";
}

// Deconnexion de la base de donnees
mysql_close();

?>

</tr>

</table>
0
thecrazyspy Messages postés 413 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 13 novembre 2015 43
2 juin 2008 à 11:36
le table doit etre crée et fermer dans le if pour qu'il ne s'affiche pas si il n'y a pas d'enregistrement
0
Matii_75 Messages postés 22 Date d'inscription lundi 26 mai 2008 Statut Membre Dernière intervention 12 février 2009 1
2 juin 2008 à 11:57
...
0
Matii_75 Messages postés 22 Date d'inscription lundi 26 mai 2008 Statut Membre Dernière intervention 12 février 2009 1
2 juin 2008 à 12:37
Tout est ok, merci.

Petit soucis parce que j'avais oublié de changer le while par un if ...
0