Stránka 1 z 3
Vložení JavaScriptu do PHP
Napsal: 19 úno 2012 20:30
od Roscow
ahoj, mám dotaz, který řeším už pěkně dlouho. Chtěl bych vložit Alert okno do php tak, aby po odeslání emailu se nenačetla nová obrazovka, kde se vypíše "Email odeslán", ale chci to tak, aby mi po odeslání vyskočilo okno, že se email odeslal...rozumíte tomu?

přikládám php skript a odkaz na stránku...
http://striteckymarek.ic.cz/projekt/objednat.htmlkód:
<Title>Objednávka</Title>
<?php
$jmeno = $_POST['jmeno'];
$bydliste = $_POST['bydliste'];
$psc = $_POST['psc'];
$telefon = $_POST['telefon'];
$email = $_POST['email'];
$prijezd = $_POST['prijezd'];
$odjezd = $_POST['odjezd'];
$sluzba = $_POST['sluzba'];
$pobyt = $_POST['pobyt'];
$zprava = "\nJméno: $jmeno
\nBydliště: $bydliste
\nPSČ: $psc
\nTelefon: $telefon
\nEmail: $email
\nDatum příjezdu: $prijezd
\nDatum odjezdu: $odjezd
\nZvolená služba: $sluzba
\nDélka pobytu: $pobyt";
$zprava=Base64_Encode($zprava);
$headers .= "Reply-to:$email\r\n".
"MIME-Version: 1.0\r\n".
"Content-Type: text/plain; charset=\"windows-1250\"\r\n".
"Content-Transfer-Encoding: base64\r\n";
$spam = $_POST['kontrola'];
if ($jmeno!="" and
$bydliste!="" and
$psc!="" and $telefon!="" and
$email!="" and $prijezd!="" and
$odjezd!="" and $sluzba!="" and
$pobyt!="" and
$kontrola=="4")
{
If(Mail("maturitni.projekt@centrum.cz", "Objednavka: " . $email, $zprava, $headers))
echo "<p><strong>E-mail byl úspěšně odeslán na e-mail poskytovatele.</strong></p>";
Else
echo "Při odesílání došlo k chybě ve funkci Mail<br>";
}
else
{
echo "<p>E-mail se <strong>nepodařilo poslat</strong> možná kvůli <strong>nevyplnění všech údajů</strong> nebo <strong>špatně zadaného výsledku.</strong></p>";
}
{
If(Mail($email, "Objednavka", $zprava, $headers))
echo "<p><strong>E-mail byl úspěšně odeslán na e-mail zájemce.</strong></p>";
Else
echo "Při odesílání došlo k chybě ve funkci Mail<br>";
}
?>
<p><a href="objednat.html"> Zpět na stránku s objednávkou...
omlouvám se za obsáhlé téma

Re: Vložení JavaScriptu do PHP
Napsal: 19 úno 2012 20:47
od CZechBoY
obsáhlé téma? napsal si 4 řádky textu

PHP píše:<Title>Objednávka</Title>
<?php
$jmeno = $_POST['jmeno'];
$bydliste = $_POST['bydliste'];
$psc = $_POST['psc'];
$telefon = $_POST['telefon'];
$email = $_POST['email'];
$prijezd = $_POST['prijezd'];
$odjezd = $_POST['odjezd'];
$sluzba = $_POST['sluzba'];
$pobyt = $_POST['pobyt'];
$zprava = "\nJméno: $jmeno
\nBydliště: $bydliste
\nPSČ: $psc
\nTelefon: $telefon
\nEmail: $email
\nDatum příjezdu: $prijezd
\nDatum odjezdu: $odjezd
\nZvolená služba: $sluzba
\nDélka pobytu: $pobyt";
$zprava=Base64_Encode($zprava);
$headers .= "Reply-to:$email\r\n".
"MIME-Version: 1.0\r\n".
"Content-Type: text/plain; charset=\"windows-1250\"\r\n".
"Content-Transfer-Encoding: base64\r\n";
$spam = $_POST['kontrola'];
if ($jmeno!="" and
$bydliste!="" and
$psc!="" and $telefon!="" and
$email!="" and $prijezd!="" and
$odjezd!="" and $sluzba!="" and
$pobyt!="" and
$kontrola=="4")
{
If(Mail("maturitni.projekt@centrum.cz", "Objednavka: " . $email, $zprava, $headers))
echo "<p><strong>E-mail byl úspěšně odeslán na e-mail poskytovatele.</strong></p><script type='text/javascript'>alert('Email byl úspěšně odeslán')</script>";
Else
echo "Při odesílání došlo k chybě ve funkci Mail<br>";
}
else
{
echo "<p>E-mail se <strong>nepodařilo poslat</strong> možná kvůli <strong>nevyplnění všech údajů</strong> nebo <strong>špatně zadaného výsledku.</strong></p>";
}
{
If(Mail($email, "Objednavka", $zprava, $headers))
echo "<p><strong>E-mail byl úspěšně odeslán na e-mail zájemce.</strong></p>";
Else
echo "Při odesílání došlo k chybě ve funkci Mail<br>";
}
?>
<p><a href="objednat.html"> Zpět na stránku s objednávkou...
Re: Vložení JavaScriptu do PHP
Napsal: 19 úno 2012 20:53
od Roscow
no myslel jsem to i s citací

jakože okno vyskočí, jen to funguje trochu pofidérně..vyzkoušej to prosím..
Re: Vložení JavaScriptu do PHP
Napsal: 19 úno 2012 20:59
od CZechBoY
co?
já nechápu jak to chceš v tom případě..
chtěl si, aby to po odeslání vyhodilo okno se zprávou, že byl odeslán mail
Re: Vložení JavaScriptu do PHP
Napsal: 19 úno 2012 21:03
od Roscow
promiň, zrovna jsem to předělával, když jsi to vyzkoušel..prostě mi to dělalo to, že vyskočilo okno i nová obrazovka zároveň..já chci jen to, aby mi nevyskočila žádná nová obrazovka, jen to okno..a když už mi to teď funguje, tak ještě potřebuju to, že po kliknutí na OK mě to vrátí zpět na stránku s objednávkou..šlo by to?:)
Udělal jsem to takto:
{
If(Mail("maturitni.projekt@centrum.cz", "Objednavka: " . $email, $zprava, $headers))
echo "<script type='text/javascript'>alert('Email byl uspesne odeslan')</script>";
Else
echo "Při odesílání došlo k chybě ve funkci Mail<br>";
}
else
{
echo "<p>E-mail se <strong>nepodařilo poslat</strong> možná kvůli <strong>nevyplnění všech údajů</strong> nebo <strong>špatně zadaného výsledku.</strong></p>";
}
Mail($email, "Objednavka", $zprava, $headers);
Úprava:
Našel jsem, jak to přesměrovat, takže mi to jede zatím tak jak to chci. Udělal jsem to takto:
<meta http-equiv="refresh" content="1;url=http://striteckymarek.ic.cz/projekt/objednat.html">
Ale ještě to nezamykej, jak se znám, tak určitě ještě něco budu potřebovat

Ale zatím ti moc děkuju, máš to u mě :))
Re: Vložení JavaScriptu do PHP
Napsal: 19 úno 2012 21:46
od CZechBoY
nevim co potřebuješ, já prostě jen dopsal kod, kterej ti vyhodí to okno, jestli si to okno chtěl ukázat hned po odeslání formuláře, tak to neodpovídá zadání "po odeslání emailu zobrazit informační okno" pač ten email může selhat atd.
proč si dal pryč ten text, kterej by se zobrazil lidem bez javascriptu?
Re: Vložení JavaScriptu do PHP
Napsal: 19 úno 2012 21:53
od Roscow
jo já ti rozumím, asi jsem to špatně napsal a ty to potom špatně pochopil..noo dal jsem ho pryč, protože když tam byl, tak vyskočilo okno + nová obrazovka zároveň a to jsem právě nechtěl..chci to tak, jak to mám právě teď, podívej se, jak jsem to myslel :)
Re: Vložení JavaScriptu do PHP
Napsal: 19 úno 2012 21:56
od CZechBoY
nevim co to dělá teď, ale když tam něco vyplnim a dám odeslat tak to jen refreshne stránku a nevim jestli jsem udělal chybu nebo se to odeslalo
Re: Vložení JavaScriptu do PHP
Napsal: 19 úno 2012 22:06
od Roscow
takže myslíš, že když přidám u druhého Mail() chybovou hlášku a protáhnu refresh, tak to bude lepší? Já tomu totiž rozumím tak, že když se to odešle, tak vyskočí okno, že OK a když chyba, tak to napíše, že se stala chyba..nebo teď mě ještě napadlo, mám dát Alert i do chyby? že když se stane chyba vyskočí normálně okno s chybovou hláškou?
Re: Vložení JavaScriptu do PHP
Napsal: 19 úno 2012 22:08
od CZechBoY
mě to je jedno co si tam dáš, ale jak říkám.. já dal odeslat a jen to refreshlo stránku, JS mám zaplej
Re: Vložení JavaScriptu do PHP
Napsal: 19 úno 2012 22:52
od Roscow
mám další problém, při vyplňování údajů. Když je vyplním všechny správně, odešle se to na oba maily. Když udělám někde schválně chybu, tak na první se to neodešle (normálně to vyhodí chybu), ale na druhý se to normálně pošle s nevyplněnými údaji. Mám to takto, ale nefunguje to:
{
If(Mail("maturitni.projekt@centrum.cz", "Objednavka: " . $email, $zprava, $headers))
echo "<script type='text/javascript'>alert('Email byl uspesne odeslan na e-mail poskytovatele.')</script>";
Else
echo "<script type='text/javascript'>alert('Chyba pri odesilani mailu ve funkci Mail.')</script>";
}
else
{
echo "<script type='text/javascript'>alert('Email neodeslan z duvodu nevyplneni vsech udaju nebo spatne zadaneho vysledku.')</script>";
}
{
If(Mail($email, "Objednavka", $zprava, $headers))
echo "<script type='text/javascript'>alert('Email byl uspesne odeslan na Vas e-mail.')</script>";
Else
echo "<script type='text/javascript'>alert('Chyba pri odesilani mailu ve funkci Mail.')</script>";
}
else
{
echo "<script type='text/javascript'>alert('Spatne zadane udaje.')</script>";
}
Re: Vložení JavaScriptu do PHP
Napsal: 20 úno 2012 00:52
od CZechBoY
ten kod je nějakej divnej, máš tam složený závorky jentak z ničeho nic?
takhle by to, když už by to prošlo, pokračovalo dál i přes validační chybu..