Ahoj,
napsal jsem si script na kontrolu formulářových polí, zda se nezasílají prázdná.. Vypadá to asi takto
if (empty($_POST['jmeno']))
{ echo "<div id=\"neodeslano\">Nevyplnil jsi text nebo své jméno</div>"; }
else {
další kód zpracující odesílání
}
.. Jenže kde je chybka.. Já, když vejdu na stránku, na které je formulář i php zpracovávací moje požadavky, hned se zobrazí echo "Nevyplnil jsi text nebo své jméno"..
Prostě, vejdu na stránku a hned se zobrazí ta hláška, která by se měla zobrazit až po zaslání prázdných políček. Doufám, že jsem to vysvětlil obstojně.
Poradí někdo? : )
Kontrola nevyplněných formulářů (php) Vyřešeno
- Stene
- Level 6
- Příspěvky: 3124
- Registrován: únor 09
- Bydliště: Jihlava
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Kontrola nevyplněných formulářů (php)
Tak tohle už jsem vyřešil.. Ještě potřebuju řešení na toto
Odešlu formulář, vše se v pořádku zpracuje a pozracování kliknu na F5 tak se ten příspěvek vloží ještě jednou.. Nějaké řešení?
<?php
if (isset($_POST['odeslano'])) {
if (empty($_POST['jmeno']))
{ echo "<div id=\"neodeslano\">Nevyplnil jsi text nebo své jméno</div>"; }
else echo "<div id=\"neodeslano\">odeslano</div>";
{
$ref = $REMOTE_ADDR;
$datum = StrFTime("%d/%m/%Y %H:%M:%S", Time());
// Připojení k databázi.
$db_spojeni = mysqli_connect
('přístupová data');
// Správné nastavení češtiny.
$objekt_vysledku = mysqli_query($db_spojeni, "SET NAMES 'UTF8'");
// Test, jestli přišla data z formuláře.
if (isset($_POST['jmeno']))
{
// Vytvoření SQL příkazu typu INSERT.
$sql_prikaz =
"INSERT INTO dorost(jmeno, datum, ip_adresa, text) "
."VALUES('"
.mysqli_real_escape_string($db_spojeni,$_POST['jmeno'])
."','"
.mysqli_real_escape_string($db_spojeni,$datum)
."','"
.mysqli_real_escape_string($db_spojeni,$ref)
."','"
.mysqli_real_escape_string($db_spojeni,$_POST['text'])
."')"
;
// Zaslání SQL příkazu do databáze.
$objekt_vysledku = mysqli_query($db_spojeni, $sql_prikaz);
}
// Odpojení od databáze.
if ($db_spojeni)
mysqli_close($db_spojeni);
}}
?>
Bohužel, zvýrazňovač syntaxí nefunguje :(
Odešlu formulář, vše se v pořádku zpracuje a pozracování kliknu na F5 tak se ten příspěvek vloží ještě jednou.. Nějaké řešení?
<?php
if (isset($_POST['odeslano'])) {
if (empty($_POST['jmeno']))
{ echo "<div id=\"neodeslano\">Nevyplnil jsi text nebo své jméno</div>"; }
else echo "<div id=\"neodeslano\">odeslano</div>";
{
$ref = $REMOTE_ADDR;
$datum = StrFTime("%d/%m/%Y %H:%M:%S", Time());
// Připojení k databázi.
$db_spojeni = mysqli_connect
('přístupová data');
// Správné nastavení češtiny.
$objekt_vysledku = mysqli_query($db_spojeni, "SET NAMES 'UTF8'");
// Test, jestli přišla data z formuláře.
if (isset($_POST['jmeno']))
{
// Vytvoření SQL příkazu typu INSERT.
$sql_prikaz =
"INSERT INTO dorost(jmeno, datum, ip_adresa, text) "
."VALUES('"
.mysqli_real_escape_string($db_spojeni,$_POST['jmeno'])
."','"
.mysqli_real_escape_string($db_spojeni,$datum)
."','"
.mysqli_real_escape_string($db_spojeni,$ref)
."','"
.mysqli_real_escape_string($db_spojeni,$_POST['text'])
."')"
;
// Zaslání SQL příkazu do databáze.
$objekt_vysledku = mysqli_query($db_spojeni, $sql_prikaz);
}
// Odpojení od databáze.
if ($db_spojeni)
mysqli_close($db_spojeni);
}}
?>
Bohužel, zvýrazňovač syntaxí nefunguje :(
- Stene
- Level 6
- Příspěvky: 3124
- Registrován: únor 09
- Bydliště: Jihlava
- Pohlaví:
- Stav:
Offline
- Kontakt:
Re: Kontrola nevyplněných formulářů (php)
Tak jsem to konečně vyřešil...
A mám ještě jeden dotaz.. Když odešlu zprávu (napíše se mi odesláno) a zmáčknu na F5 (aktualizovat) tak se tam zpráva zašle ještě jednou? Je proti tomu nějaká ochrana..
A mám ještě jeden dotaz.. Když odešlu zprávu (napíše se mi odesláno) a zmáčknu na F5 (aktualizovat) tak se tam zpráva zašle ještě jednou? Je proti tomu nějaká ochrana..
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 17
- 5495
-
od viktorsavo
Zobrazit poslední příspěvek
10 lis 2024 10:52
-
- 2
- 1977
-
od Alferi
Zobrazit poslední příspěvek
23 kvě 2025 08:49
-
- 0
- 2203
-
od viktorsavo
Zobrazit poslední příspěvek
23 dub 2025 20:40
-
- 0
- 2141
-
od nermitus
Zobrazit poslední příspěvek
17 lis 2024 22:57
-
- 5
- 2598
-
od Kminek
Zobrazit poslední příspěvek
21 čer 2024 13:51
Zpět na “Programování a tvorba webu”
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 6 hostů