PHP Problem

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
vaggvk
Δημοσιεύσεις: 2
Εγγραφή: 27 Σεπ 2011 03:00

PHP Problem

Δημοσίευση από vaggvk » 27 Σεπ 2011 03:08

Kalispera paidia! eimai entelws arxarios sto php kai neos sto forum sas!
Suggnwmh pou grafw greeklish alla to pc mou den grafei ellhnika ,

Eftiaksa ena registration page se PHP kai mou vgazei kapoia Notice

(P.x)Notice: Undefined index:

mporeite na me voithisete?

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

PHP Problem

Δημοσίευση από korgr » 27 Σεπ 2011 10:01

Πως να σε βοηθήσουμε αν δεν μας δείχνεις τον κώδικα?

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

PHP Problem

Δημοσίευση από Rapid-eraser » 27 Σεπ 2011 10:19

Κλείσε τα notice της php από το php.ini και δεν θα τα βλέπεις... :P

Κώδικας: Επιλογή όλων

error_reporting = E_ALL & ~E_NOTICE
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

vaggvk
Δημοσιεύσεις: 2
Εγγραφή: 27 Σεπ 2011 03:00

PHP Problem

Δημοσίευση από vaggvk » 28 Σεπ 2011 00:34

suggnwmh pou den edose perisoteres plirofories

edw einai code

include ('connect.php');

$username = $_POST['username'];
$password = $_POST['password'];
$submit = $_POST['submit'];

if ($submit) {

$check = mysql_num_rows(mysql_query("SELECT * FROM accounts WHERE login='".$username."'"));

if ($check == 0) {

$password = base64_encode( pack( "H*", sha1( utf8_encode( $password))));

mysql_query("INSERT INTO accounts VALUES ('".$username."', '".$password."', '0', '0', '0', '1')");

echo "<b>You have been registered. Visit the login page in order to login and edit your account.</b>";
}
else {
echo "<b>This username already exists.</b>"

Άβαταρ μέλους
cordis
Administrator, [F|H]ounder, [C|S]EO
Δημοσιεύσεις: 27629
Εγγραφή: 09 Οκτ 1999 03:00
Τοποθεσία: Greece
Επικοινωνία:

PHP Problem

Δημοσίευση από cordis » 01 Οκτ 2011 01:28

αυτό που σου είπε ο Rapid-eraser είναι, αλλιώς θα πρέπει να ελέγχεις κάθε σου μεταβλητή.

π.χ.

Κώδικας: Επιλογή όλων

if &#40;!isset&#40;$_POST&#91;'username'&#93;&#41;&#41;
&#123;
//If not isset -> set with dumy value
$_POST&#91;'action'&#93; = "undefine";
&#125; 
Δεν απαντάω σε προσωπικά μηνύματα με ερωτήσεις που καλύπτονται από τις ενότητες του forum. Για ο,τι άλλο είμαι εδώ για εσάς.
- follow me @twitter

gvre
Δημοσιεύσεις: 990
Εγγραφή: 14 Οκτ 2010 11:34
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

PHP Problem

Δημοσίευση από gvre » 01 Οκτ 2011 10:07

Τα notices που βλέπεις εμφανίζονται επειδή προσπαθείς να διαβάσεις ένα στοιχείο του array $_POST το οποίο δεν υπάρχει (λογικό αφού δεν έχει γίνει submit η φόρμα).

Αν αλλάξεις τον κώδικά σου με τον παρακάτω θα σταματήσουν να εμφανίζονται.

Κώδικας: Επιλογή όλων

include &#40;'connect.php'&#41;;

if &#40;isset&#40;$_POST&#91;'username'&#93;&#41;&#41;
&#123;
        $username = $_POST&#91;'username'&#93;;
        $password = $_POST&#91;'password'&#93;;

        $check = mysql_num_rows&#40;mysql_query&#40;"SELECT * FROM accounts WHERE login='".$username."'"&#41;&#41;;

        if &#40;$check == 0&#41;
        &#123;
                $password = base64_encode&#40;pack&#40; "H*", sha1&#40;utf8_encode&#40;$password&#41;&#41;&#41;&#41;;   
                mysql_query&#40;"INSERT INTO accounts VALUES &#40;'".$username."', '".$password."', '0', '0', '0', '1'&#41;"&#41;;
                echo "<b>You have been registered. Visit the login page in order to login and edit your account.</b>";
        &#125;
        else  
                echo "<b>This username already exists.</b>";
&#125; 
ps. Για queries στη βάση δεδομένων είναι καλύτερα να χρησιμοποιείς prepared statements ή τουλάχιστον mysql_real_escape_string.

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες