Autor Zpráva
tomek
Profil *
Potřeboval bych toto ošetřit, když ten záznam nenalezne..
nechápu, ale nějak mi to nefunguje

<?
function tucne_posty($uzivatel,$post,$cas){
	if($uzivatel != ""){
  $last_visit_id = mysql_result(mysql_query("SELECT COUNT(*) FROM `helppc_forum_visit` WHERE `user` = '".$uzivatel."' AND `topic_id` = '".$post."' AND `last_visit` < '$cas'"), 0);
  if($last_visit_id == ""){ $last_visit_id = 1; }
  return $last_visit_id;}
	  
} 
if(tucne_posty($_SESSION['nick'],$topic_array['topic_id'],$topic_array['topic_last_post_time']) != 0){ echo "class='nazev_tema'"; } 

?>
WertriK
Profil
function tucne_posty($uzivatel,$post,$cas){
    if($uzivatel != ""){
    $query = mysql_query("SELECT COUNT(*) FROM `helppc_forum_visit` WHERE `user` = '".$uzivatel."' AND `topic_id` = '".$post."' AND `last_visit` < '$cas'");
    if ( mysql_num_rows($query) == 0) {
    return "1";
    } else {
  return mysql_result($query,0)
   }
      
} 
Alphard
Profil
[#2] WertriK
To je trošičku překombinované, v dotaze má count(*).

tomek
Co vlastně chcete, když se nic nenajde, vrátit 1?
return $last_visit_id>0 ? $last_visit_id : 1;
tomek
Profil *
Alphard:
přesně
WertriK
Profil
Alphard:
dobrý postřeh
Alphard
Profil
tomek:
Ten kód funguje, ale je nesmyslněně navržený.
Když se něco najde, vrátí se číslo, když ne, vrátí se jedna. V podmínce $x != 0 to vždy dopadne stejně.
Buď
return $last_visit_id>0 ? 0 : 1;
nebo prostě obráceně
return $last_visit_id;
tomek
Profil *
když to nic nenajde, aby to vrátilo 0
tomek
Profil *
teda, blbnu, já už nevím.. Prostě jsou v tom ukládány poslední návštěvy daného topicu.. a potřebuju pomocí tohoto odlišovat nové příspěvky

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0