Rezultate == 0

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
claUdiu
Mesaje:313

Rezultate == 0

Buna. Am si eu o problema cu care ma chinuii de ceva timp. Idea este ca am acest cod:

Cod: Selectaţi tot

<?php
include("config.php");

//Cautam in db dupa cuvantul cautat
$cuvant = $_POST['cuvant'];

$select = mysql_query("SELECT * FROM posts WHERE post LIKE '%$cuvant%' OR title LIKE '%$cuvant%'");

$rezultate = mysql_num_rows($select);

//Adaugam datele in variabile
while($afis = mysql_fetch_array($select)){

$titlu = $afis['title'];
$id = $afis['id'];
$mesaj = $afis['post'];
$categorie = $afis['category'];
$data = $afis['date'];

if($rezultate == 0){
echo "nici un rezultat";
}else{
echo '<a href="read.php?pid='.$id.'"><h2>'.$titlu.'</h2></a>';

echo '<font color="red">Categorie: <a href="category.php?cid='.$id_categorie.'">'.$categorie.'</a> Postat pe '.$data.'';
echo "<br/>";
echo "<br/>";
echo '<font color="black" size="5">'.$mesaj.'</font>';
echo "<br/>";
echo "<br/>";
echo "<br/>";
}
}
?>
cu care vreau sa afisez un mesaj daca in db nu este nici un rezultat. Dar, cand scriu ceva ce nu este in db, nu-mi apare mesajul... Am pus si un egal, si doi, dar degeaba... Cum trebuie sa fac ca sa-l arate? Multumesc mult!
Se spune ca...."omul tot invata in viata". Dar...Totusi...Trebie sa ne oprim undeva, nu?

MarPlo Mesaje:4343
Salut
Aplica un var_dump($rezultate); , iti va arata valoarea si tipul de data din $rezultate. Apoi e usor sa iti dai seama ce conditie sa pui.

claUdiu Mesaje:313
TOt nu stiut.... Imi apare int(rezultate)... Am pus asa:

Cod: Selectaţi tot

if($rezultate >= 1){

echo '<a href="read.php?pid='.$id.'"><h2>'.$titlu.'</h2></a>';
echo '<font color="red">Categorie: <a href="category.php?cid='.$id_categorie.'">'.$categorie.'</a> Postat pe '.$data.'';
echo "<br/>";
echo "<br/>";
echo '<font color="black" size="5">'.$mesaj.'</font>';
echo "<br/>";
echo "<br/>";
echo "<br/>";
echo var_dump($rezultate);
}else{

echo "asda";

}
Dar nu apare nimic cand nu este nici un rezultat...
Se spune ca...."omul tot invata in viata". Dar...Totusi...Trebie sa ne oprim undeva, nu?

MarPlo Mesaje:4343
Doar var_dump($rezultate); , fara echo , si inainte de if().
Normal, daca $rezultate e mai mic decat unu, dupa cum e codul, ar trebui sa execute ce e la else { ... }.
Daca apare ca $rezultate e 0 si nu executa ce e la "else{}", nu stiu ce sa fie.

claUdiu Mesaje:313
Am pus var_dump inainte de if si fara echo si tot asa apare, adica int(cate rezultate sunt).
Se spune ca...."omul tot invata in viata". Dar...Totusi...Trebie sa ne oprim undeva, nu?

MarPlo Mesaje:4343
Atunci, daca $rezultate e mai mare decat 0, undeva in tabel, la "post" sau "title" gaseste vreun rezultat la ce cauti, si e normal sa execute codul de la if(){ ... }