Autor Zpráva
virgo86
Profil
zdravím, Mám skript který mi vygeneruje heslo pro uživatele který jej zapoměl nebo zapoměl uživatelské jméno. vše běží ok ale ve skriptu se mi to vždy zastavý u podmínky if(mysql_num_rows($result)==0) a co je zvlaštní tak proměnna $email obsahuje email uzivatele který ho zada ve formulari a proměnna $heslo je vygenerované nové heslo. A já potřebuji z databaze zjistit uzivatelské jmeno v databazi pod názvem nickid. Když se zeptám přímo v databazí tak mi přijde kladná odpověď. a co je zajimavé když si v te podmince kde se mi skcript zastavý misto return false zadám echo $email; tak se mi vypiše pouze část e-mailu např: petrjanac@seznam.cz tak se zobrazi jenom petrjan. Tak sem si říkal že to asi ta proměnné už přišla špatně z volaním funkce ale ne protože níže tuto proměnou využivám k zaslaní na daný e-mail.¨
function notify_password($email, $heslo)
// oznamý uživately že jeho heslo bylo změněno
{

   if (!($conn = db_connect()))
      return false;
  $result = mysql_query("select nickid from uzivatele
                            where email='$email'");

    if (!$result)
    {
      return false; // nezměněno
   }
   
   else if (mysql_num_rows($result)==0)
   {
   
     return false; // uživatel neni v databázi
   }
   else
   {
$mail = $email;
$predmet = "Server CNC nové heslo";
$zprava = "Dobrý den,<br /> <p>Na Vaší žádost byly zaslány přihlašovací údaje na Váš e-mail.</p>"
          ."<p>Vaše přihlašovací údaje: <br /> uživatelské jméno: <strong>$nickid</strong><br />"
          ."Vaše nové heslo: <strong>$heslo</strong></p>"
          ."<p>Prosím co nejdříve si ho změňte!</p>"
              ."<p>Pokud nastanou jakékoli problémy kontaktujte prosím administratora serveru.</p>"
              ."<p>S pozdravem redakce serveru <b>CNCnet</b></p>"
              ."<p><strong>Kontakt na Administratora serveru:</strong><br /> Petr Janáč<br /><b>mobil:</b> +420731326674<br /> <b>e-mail:</b> petrjanac@seznam.cz<br \>"
              ."<p><i>V případě že tento e-mail nebyl adresován Vám omlouváme se a neberte tyto informace nazřetel děkuji.</i></p>";
$kon = cs_mail ($mail, $predmet, $zprava, "From: podpora@virgonet.cz\n");

if ($kon)
  return true;
 else
  return false;
    }

} 

když ten dotaz na databazi odstranim tak mi mail bez problému přijde a dokonce i z diakritikou:) dík za radu
fuckin
Profil
Zkus mysql_num_rows()===false nebo jen !mysql_num_rows()

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: