Autor Zpráva
Kronny
Profil
Ahoj,
potřebuji pomoct se sestavením proměnné.

Na index.php mám:
<html>

    <form action='login.php' action='POST'>
        Přihlašovací jméno: <input type='text' name='username_field'><br>
        Heslo: <input type='password' name='password_field'><br>
        <input type='submit' value='Přihlásit!'>
    </form>

</html>

A na login.php mám:
<?php

$username = $_POST["username_field"];
$password = $_POST["password_field"];

if ($username&&$password)
{

$connect = mysql_connect("localhost","root","") or die("Chyba 1: Připojení k databázi selhalo!");
mysql_select_db("uzivatele") or die("Chyba 2: Databáze nebyla nalezena!");

}
else
    die("Prosím vyplň jméno i heslo.");

?>

Chyba je v tom že stále dostávám zpět:
Notice: Undefined index: username_field in ..\login.php on line 3
a
Notice: Undefined index: password_field in ..\login.php on line 4

Prosím o pomoc. Vím kde je chyba ale nevím co s ní.

Předem děkuji za pomoc.
Str4wberry
Profil
Můžeš vypnout vypisování poznámek. Nebo použít isset.
BuGeR
Profil
To se zobrazí, protože už testuješ proměnnou $username a $password, které mají obsah neexistujicího $_POSTu. Ošetři si to funkci isset()
Kronny
Profil
Takže vše funguje jak má?


BuGeR:
Jakto že nemají? Pokud zadám do těchto polí na index.php něco tak ta proměnná nemůže mít neexistující obsah. Takže pokud bych v login.php přidal
echo ("$username/$password");
tak by se mi snad mělo ukázat co jsem zadal na index.php ne? :O
BuGeR
Profil
Kronny:
Omlouvám se, četl jsem to narychlo.. A ten soubor login.php, otevírate normálně v prohlížeči VY ručně? A nebo až po tom odeslání formuláře?
Protože, jakmile ho otevřeš ručně, tak je jasné, že to tu chybu bude házet, protože to čeká, že přijme data z $_POSTu.
Kronny
Profil
To chápu, jasně .. Děje se to po tom, co odešlu formulář přes submit.
BuGeR
Profil
Kronny:
Už vím kde je chyba :-).
<form action='login.php' action='POST'>
Místo action="POST" dej method="POST". Pokud nemá formulář nastavenou METHOD, tak se chová nejspíš jako GET. (Proto taky ten undefined index).
Kronny
Profil
No jasně! :D .. Mockrát díky!

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: