Autor | Zpráva | ||
---|---|---|---|
Tata Profil |
#1 · Zasláno: 26. 3. 2006, 22:19:48 · Upravil/a: Tata
Na dotaz ohľadne WAMPu mi zatiaľ nikto neodpovedal. Nainštaloval som teda EASY PHP a nefunguje to ani v ňom, takže chyba musí byť inde. Ide o to, že tento súbor:
<? //Nastav uz. meno a heslo $user="admin"; $pass="admin"; //ktorá stránka sa má otvoriť po prihlásení? $protected="podujatia_work.php"; $auth="Heslo"; #End of configuration.............................................. if ($_GET['action']=='validate'){ if(($_POST['user']==$user)&&($_POST['passwd']==$pass)){ header("Cache-control: private"); session_start(); $_SESSION["user_is_logged"] = 1; header("Location: ".$protected); exit; } } ?> <?php ob_start(); ?> <form action="podujatia_login.php?action=validate" method="post" style="width=250px"> <fieldset> <legend>Autorizácia</legend> <label>Správca:</label><input type="text" name="user"> <br> <label>Heslo:</label><input type="password" name="passwd"><br> <input type="submit" value="Pokračovat"> </fieldset> </form> <?php ob_end_flush();?> mi vracia túto hlášku: Notice: Undefined index: action in d:\easyphp1-8\www\kultura\publikacie_login.php on line 13 Na riadku 13 je toto: if ($_GET['action']=='validate'){ Existuje nejaký nástroj, ktorý by mi script "krokoval" a upozornil na chyby? |
||
Tomik Profil |
#2 · Zasláno: 26. 3. 2006, 22:24:07
Existuje nejaký nástroj, ktorý by mi script "krokoval" a upozornil na chyby?
Krokovat lze přímo v PHP, že si budeš po částech zadávat příkaz EXIT.. A na chyby upozozňuje přímo péhápé... |
||
Hamstet Profil * |
#3 · Zasláno: 27. 3. 2006, 08:43:49
Chyba je v apostrofech - do indexů polí se nepíšou. Správně:
if($_GET[action]=='validate'){ ........... } |
||
Tata Profil |
#4 · Zasláno: 27. 3. 2006, 09:01:16
Hamstet
Znamená to, že má všetky [' a '] nahradiť za [ a ]? |
||
Tomik Profil |
#5 · Zasláno: 27. 3. 2006, 09:19:04
Tata
Nebo za ["a"]... |
||
Tata Profil |
#6 · Zasláno: 27. 3. 2006, 10:41:19
Nanovo som nainštaloval WAMP. Čo znamená hlásenie:
Forbidden You don't have permission to access /C:/localweb/nova3/cf~index.php on this server. ---------------------------------------------------------------------- ---------- Apache/2.0.55 (Win32) PHP/5.1.2 Server at 127.0.0.1 Port 80 |
||
Tomik Profil |
#7 · Zasláno: 27. 3. 2006, 10:58:10
Tata
Nanovo som nainštaloval WAMP. Čo znamená hlásenie: Forbidden You don't have permission to access /C:/localweb/nova3/cf~index.php on this server. ---------------------------------------------------------------------- ---------- Apache/2.0.55 (Win32) PHP/5.1.2 Server at 127.0.0.1 Port 80 Zakázaný Nemáte povolení k přístupu na /C:/localweb/nova3/cf~index.php na tomto serveru. ---------------------------------------------------------------------- ---------- Apache/2.0.55 (Win32) PHP/5.1.2 Server na 127.0.0.1 Port 80 |
||
Tata Profil |
#8 · Zasláno: 27. 3. 2006, 11:01:33
textu rozumiem, neviem, čo a kde treba v nastavení zmeniť
|
||
Tomik Profil |
#9 · Zasláno: 27. 3. 2006, 11:09:47
Většinou to znamená, že není k dispozici soubor INDEX.PHP nebo je někde přímo (.htaccess) zakázaný přistup do té konkrétní složky.
|
||
Anonymní Profil * |
#10 · Zasláno: 27. 3. 2006, 11:32:20
dal som do adresára prázdny INDEX.PHP - nič, .htaccess v žiadnom podadresári nemám, na vytváraných stránkach som to nedefinoval. Na serveri, kde sú umiestnené, čiastočne fungujú (nefungujú niektoré funkcie, ale to je iný problém).
|
||
ash Profil |
#11 · Zasláno: 27. 3. 2006, 12:40:11 · Upravil/a: ash
Chyba je v apostrofech - do indexů polí se nepíšou. Správně:
if($_GET[action]=='validate'){ ........... } Toto je veľmi zavádzajúce tvrdenie. V tomto prípade sa apostrofy do indexov naopak píšu. Inak PHP hľadá najprv konštantu action a vypíše notice: PHP Notice: Use of undefined constant action - assumed 'action'. Apostrofy sa nepíšu v len prípade, že pole je v reťazci, napr. echo "bola zadaná akcia $_GET[action]"; inak Notice: Undefined index: action in d:\easyphp1-8\www\kultura\publikacie_login.php on line 13 Znamená, že nemáš premennú 'action' v URL. |
||
Tata Profil |
#12 · Zasláno: 27. 3. 2006, 12:47:18
Vďaka za upozornenie. Inak - urobil som tie zmeny a uploadoval všetko na server a buď tam v skriptoch tie reťazce nemám, alebo je server natoľko inteligentný, že sa dovtípil a ignoroval nesprávnu syntax. Localhost mi však ešte stále nefunguje. Stránky, ktoré sa na serveri normálne zobrazia mi vôbec nezobrazí, alebo vypíše, že nemám právo prístupu na localhost.
|
||
ash Profil |
#13 · Zasláno: 27. 3. 2006, 12:56:19
Skontroluj ešte v httpd.conf, či tám máš nastavené
DirectoryIndex index.php DirectoryIndex index.html |
||
Tata Profil |
#14 · Zasláno: 27. 3. 2006, 13:22:29 · Upravil/a: Tata
ash
je tam: DirectoryIndex index.php index.php3 index.html index.htm index.html.var localhost mi to už načíta ale z konkrétnej stránky, ktorú chcem otvoriť mi to načíta iba farebné nastavenie. V príslušnom index.php mám "includovaných" niekoľko *.inc súborov z adresára pages, ale tie sa nezobrazia vôbec. A keď dám načítať priamo niektorú stránku z "hlbších" podadresárov, vypíše mi to zakázaný prístup |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0