Autor Zpráva
fffggghhhjjj404
Profil
Ahoj, Potřeboval bych pomoct s PHP, mám tam udělané odesílání e-mailu a po odeslání emailu se mi zobrazí onclick "Váš e-mail byl úspěšně odeslán", jenomže se mi ten onclick zobrazí i pří zapnutí stránky, zkoušel jsem oparátory XOR atd..., Prosím pomooc.
PHP:
<?php
$predmet = $_GET['predmet'];
  $zprava = $_GET['zprava'];

   
if ($Odeslat = "onclick")
{
    echo '<script language="javascript">';
    echo 'alert("Váš Email byl úspěšně odeslán.")';
    echo '</script>';
}

?>
a form je takový
<form method="get">
Zadejte předmět: <input type="text" name="predmet">
<br>Zadejte text zprávy:
<br><textarea name="zprava" cols="22" rows="2">
</textarea>
<br><input type="button" value="Hotovo" name="Odeslat" >
</form>
Tomáš123
Profil
fffggghhhjjj404:
Na riadku 6 priradzuješ namiesto porovnávania.
Jzikes
Profil
A jak máš definovanou tu proměnnou $Odeslat, v tom budeš mít problém.. + jak říká Tomáš123, takhle ji jen definuješ ne porovnáváš (místo '=' použij '==').
RastyAmateur
Profil
fffggghhhjjj404:
Jako kontrolu, jestli byl formulář odeslán můžeš použít něco jako

if((!empty($_GET["predmet"])) and (!empty($_GET["zprava"]))){
  # kod
  }

nic jako $Odeslat == "onclick" jsem v životě neviděl. Myslím si, že to nejde. Ovšem možná se pletu. Nebylo by to dnes poprvé, co jsem si myslel, že něco nejde nebo se to nesmí a ono to šlo :)
Keeehi
Profil
fffggghhhjjj404:
Já bych měl mnohem lepší nápad.
echo '<script language="javascript">alert("Váš Email byl úspěšně odeslán.")</script>';
dej hned za funkci mail() a nic víc řešit nemusíš.
Tomáš123
Profil
Keeehi:
Nebolo by spoľahlivejšie vypisovať správu o úspešnom odoslaní až pri overení, že naozaj všetko prebehlo správne? Teda:
if(mail("...", "...", "...", "...") {
  echo '<script language="javascript">alert("Váš Email byl úspěšně odeslán.")</script>';
}

fffggghhhjjj404:
Pre užívateľa je menej obťažujúce, keď mu informáciu o úspešnosti odoslania zobrazíš kdesi na stránke namiesto agresívnych vyskakovacích okien.

Dlhšie a tajnejšie obsahy by si mal posielať metódou POST.
Keeehi
Profil
Tomáš123:
Návratová hodnota funkce mail není moc užitečná. Tedy určitou hodnotu má a ano, takto by to bylo lepší. Ovšem kvůli „It is important to note that just because the mail was accepted for delivery, it does NOT mean the mail will actually reach the intended destination.“ si myslím, že zas až tak moc nevadí, pokud se ověřovat nebude.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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