Autor Zpráva
Jirka_X
Profil *
Pěkný večer, vím, že už se to tu řešilo, ale nepovedlo se. Mám jednoduchý forlulář o čtyřech polích, dejme tomu takovíto:

<form method="post">

<label for="jmeno">Jméno:</label>
<input type="text" name="jmeno" size="20" id="jmeno" /><br />

<label for="adresa">Adresa:</label>
<input type="text" name="adresa" size="20" id="adresa" /><br />

<label for="tel">Telefon:</label>
<input type="text" name="telefon" size="20" id="tel" /><br />

<input class="odeslat" type="submit" value="Odeslat" />

</form>

A potřeboval bych nějakým jednoduchým zbůsobem tata odeslat na e-mail, zkoušel jsem to přes PHP, ale tam se mi podařilo odeslat jen e-mail ne položky jako je adresa nebo telefon. Moc děkuji za každou radu
radas
Profil *
a co tam nešlo na tom mem řešeni?
Jirka_X
Profil *
Při stisknutí tlačítka odeslat to hodilo nějakou chybu. Já si nejsem jist zda jsem to dobře pochopil, celý ten Váš kód měl být v jednom souboru?
SwimX
Profil
<form method="post" action="nazev souboru ve kterem je php">

<label for="jmeno">Jméno:</label>
<input type="text" name="jmeno" size="20" id="jmeno" /><br />

<label for="adresa">Adresa:</label>
<input type="text" name="adresa" size="20" id="adresa" /><br />

<label for="tel">Telefon:</label>
<input type="text" name="telefon" size="20" id="tel" /><br />

<input class="odeslat" type="submit" value="Odeslat" />

</form>


<?php
$jmeno = $_POST['jmeno'];
$adresa= $_POST['adresa'];
$telefon = $_POST['spam'];

if ($jmeno!="" && $adresa!="" && $telefon !="")
{
Mail("vase@adresa.com", $jmeno, $adresa, $telefon);
echo "<p><strong>Váš e-mail byl úspěšně odeslán</strong>.</p>";
}
else
{
echo "<p>Váš e-mail se <strong>nepodařilo odeslat</strong> pravděpodobně jste nevyplnili všechny údaje.</p>";
}
?>
SwimX
Profil
Pokud to nahlásí chbyu, napiš ji sem, ať na to můžem kouknout
Jirka_X
Profil *
Ano, takle to funguje, krom českých znaků, což by mi nevadilo, ale mohl bych tam přidat ještě jendo nebo dvě pole nebo to je omezené pouze na 3? Díky
Mistr
Profil
Jirka_X
mohl bych tam přidat ještě jendo nebo dvě pole nebo to je omezené pouze na 3
Nikoliv, není to omezené na tři pole. Polí může být libovolný počet (doufám, že mne teď někdo nebude případně chytat za slovo). Jen je potřeba vhodně upravit HTML kód formuláře a následně i kód PHP skriptu.

Buď ty změny zkus sám odvodit z výše uvedeného příkladu kolegy SwimXe a pokud se Ti to nepodaří, vlož sem HTML kód formuláře. Společnými silami sestavíme PHP skript.
Jirka_X
Profil *
Dobrá, tak dejme tomu, že by to vypadalo kompletne takto
<form method="post" action="posli.php">

<label for="jmeno">Jméno:</label>
<input type="text" name="jmeno" size="20" id="jmeno" /><br />

<label for="adresa">Adresa:</label>
<input type="text" name="adresa" size="20" id="adresa" /><br />

<label for="psc">PSČ</label>
<input type="text" name="psc" size="20" id="psc" /><br />

<label for="obec">PSČ</label>
<input type="text" name="obec" size="20" id="obec" /><br />

<label for="tel">Telefon:</label>
<input type="text" name="telefon" size="20" id="tel" /><br />

<input class="odeslat" type="submit" value="Odeslat" />

</form>

Díky moc
SwimX
Profil
<?php
$jmeno = $_POST['jmeno'];
$adresa= $_POST['adresa'];
$psc= $_POST['psc'];
$obec= $_POST['obec'];
$telefon = $_POST['telefon'];

if ($jmeno!="" && $adresa!="" && $psc!="" && $obec!="" && $telefon !="")
{
Mail("vase@adresa.com", $jmeno, $adresa, $psc, $obec, $telefon);
echo "<p><strong>Váš e-mail byl úspěšně odeslán</strong>.</p>";
}
else
{
echo "<p>Váš e-mail se <strong>nepodařilo odeslat</strong> pravděpodobně jste nevyplnili všechny údaje.</p>";
}
?>

Pokud ti nevadí že uživatel nevyplní některé z polí pak ho vygoď ze zvýrazněné podmínky..
Jirka_X
Profil *
Tak to buhužel nefunguje, hlásí to po odeslání následujcí chybu:

Warning: mail() expects at most 5 parameters, 6 given in /var/www/web5/malasorte.cz/malasorte.cz/posli.php on line 18
Jirka_X
Profil *
Možná by mohla být chyba i na serveru, já jsem si na webu s PHP ještě moc nehrál....

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0