Autor | Zpráva | ||
---|---|---|---|
Unknown Profil * |
#1 · Zasláno: 23. 4. 2012, 15:17:45
Ahoj mám tu kó a píše mi t o tam tohle a nevím jak to odstranit pls help :)
Notice: Undefined index: soubor in C:\ComplexWebServer\http_docs\upload.php on line 11 Notice: Undefined index: soubor in C:\ComplexWebServer\http_docs\upload.php on line 12 Notice: Undefined index: ok in C:\ComplexWebServer\http_docs\upload.php on line 13 <?php $delimeter="/*f1f*\\"; // delimeter můžeš ponechat $cesta_souboru="log.txt"; // cesta k souboru TXT, do kterého se budou daný komentáře ukládat $umisteni_scriptu=""; //umístění tohoto souboru if(!file_exists($cesta_souboru)){ // pokud neexistuje soubor do kterého se má zapisovat, tak ho vytvoří file_put_contents($cesta_souboru,""); } if(isset($_POST['komentar'])){ //pokud kliknou na odeslat tak se to začne zpracovávat if(!in_array("",array($_POST['jmeno'],$_POST['email'],$_POST['text']))){ //zkontroluje, zda vyplnili všechny položky $soubor=file_get_contents($cesta_souboru); // načtu si soubor s předchozíma komentářema $zapis=$soubor."\n".$_POST['jmeno'].$delimeter.$_POST['email'].$delimeter.$_POST['text']; //přidám starý text + si dám delimetr mezi jednotlivé nové stringy file_put_contents($cesta_souboru, $zapis); //přepíšu soubor } else { echo "<b>Nemáte zadané všechny hodnoty.</b><br>"; // pokud nejsou zadané všechny hodnoty, vypíše to tuto hlášku } } $komentare=file_get_contents($cesta_souboru); // načtení souboru do proměnné $rozdeleni_radky=explode("\n",$komentare); // rozdělení dle řádků => na jednotlivé příspěvky if(count($rozdeleni_radky)!=0){ // pokud je v něm víc jak jeden komentář for($i=0;$i<count($rozdeleni_radky);$i++){ // cyklus, pro všechny komentáře if($rozdeleni_radky[$i]!=""){ $roztrzeni=explode($delimeter,$rozdeleni_radky[$i]); // roztržení dle delimetru $koment=array("jmeno" => $roztrzeni[0] , "email" => $roztrzeni[1], "text" => $roztrzeni[2]); // pro hezčí vypisování přidáno do array echo "<b>Jmeno:</b> ".$koment['jmeno']."<br>"; // jednoduché vypsání echo "<b>Email:</b> ".$koment['email']."<br>"; echo "<b>Text:</b> ".$koment['text']."<br>"; echo date("Y, F, G"); echo "<hr><br>"; }} } ?> <form method="POST"> Jmeno:<input type="text" name="jmeno"> Email:<input type="email" name="email"><br> Text:<textarea cols="40" name="text"></textarea><br> <input type="submit" value="Odeslat" name="komentar"> </form> </body> </html> |
||
ShiraNai7 Profil |
#2 · Zasláno: 23. 4. 2012, 15:29:37
Používají se tam proměnné, které neexistují. Jejich názvy a řádky máš v chybových hláškách.
|
||
Unknown Profil * |
#3 · Zasláno: 23. 4. 2012, 18:43:52
a dokázal bys mi s tím pomoci ?? nějak nevím
|
||
Tori Profil |
#4 · Zasláno: 23. 4. 2012, 20:29:53
Unknown:
Kód v [#1] je opravdu ze souboru upload.php? Popsané chyby by tam neměly vůbec nastat, nikde nevidím používat "soubor" jako klíč pole. |
||
panther Profil |
#5 · Zasláno: 23. 4. 2012, 20:58:28
Unknown:
jak píše Tori, uvedený kód s varováními (ne chybami) nekoresponduje. Obecně ale platí, že se snažíš přistoupit k indexu pole „soubor“ a „ok“, které (v době jejich volání) neexistují. Podívej se na funkci isset, s jejíž pomocí existenci ověříš. |
||
Unknown Profil * |
#6 · Zasláno: 24. 4. 2012, 01:04:55
tak to sem už vyřešil ,ale tady mě trápí to samé a opět prosím o pomoc :)
Notice: Undefined index: username in C:\ComplexWebServer\http_docs\login2.php on line 5 Notice: Undefined index: password in C:\ComplexWebServer\http_docs\login2.php on line 6 <?php $username = $_POST['username']; $password = $_POST['password']; if ($username&&$password) { $connect = mysql_connect("localhost", "root", "123123"); mysql_select_db("uzivatele"); $query = mysql_query("SELECT * FROM uziv WHERE username='$username'"); $numrows = mysql_num_rows($query); if ($numrows!=0) { while ($row = mysql_fetch_assoc($query)) { $dbusername = $row['username']; $dbpassword = $row['password']; } //check to see if macth if ($username==$dbusername&&$password==$dbpassword) { echo "you are in!"; } else echo "špatné heslo"; } } ?> |
||
Tori Profil |
<?php // podmínka, jestli byl odeslaný formulář. // můžete použít i tohle: if (!empty($_POST['username'])) if ($_POST) { // připojení k DB dejte do samostatného souboru, ať ho nemusíte psát v každém skriptu znova include './dbSpojeni.php'; // do SQL dotazu je potřeba přidat ochranu proti SQL injection $username = mysql_real_escape_string($_POST['username']); $password = mysql_real_escape_string($_POST['password']); // heslo můžete taky ověřit rovnou v DB: $result = mysql_query("SELECT * FROM uziv WHERE `username` = '$username' AND `password` = '$password'"); if (mysql_num_rows($result) != 0) { echo "you are in!"; // $dataUzivatele = mysql_fetch_assoc($result); } else { echo "špatné heslo nebo přihlašovací jméno"; } } |
||
Časová prodleva: 12 let
|
0