Ένα απλό User Login σε PHP

Μια περιοχή όπου τα μέλη μας μπορούν να βάζουν τα PHP scripts που έχουν φτιάξει και θέλουν να τα μοιραστούν με τα υπόλοιπα μέλη.

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

Απάντηση
mariosal
Honorary Member
Δημοσιεύσεις: 1473
Εγγραφή: 09 Νοέμ 2007 23:55

Ένα απλό User Login σε PHP

Δημοσίευση από mariosal » 31 Οκτ 2009 15:04

Απ' ότι θυμάμαι ο κώδικας σου είναι πάνω από το <body> οπότε λογικά δε γίνεται να εμφανιστεί

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Ένα απλό User Login σε PHP

Δημοσίευση από Apostolis_38 » 31 Οκτ 2009 15:25

Γιατί Μάριε; Αν η σελίδα δεν έχει καθόλου html και έχει μόνο

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

 <?php session_start&#40;&#41;; echo $username = $_SESSION&#91;'username'&#93;;?>
δεν θα τυπώσει τίποτα;

avax,Κάτσε γιατί έχουμε μπλέξει τα μπούτια μας...
Εχεις τη σελίδα login.php όπου κάνεις select το username. Αν δεν κάνει match κάποια εγγραφή σε ξαναγυρνάει στην login.php. Αν κάνει match σε πάει στην index.
Σωστά μέχρι εδώ;
Που είναι ο κώδικας που σε πάει στο index;
Για βάλε λίγο να το δούμε.

Άβαταρ μέλους
avax31
Δημοσιεύσεις: 95
Εγγραφή: 11 Ιουν 2009 14:16

Ένα απλό User Login σε PHP

Δημοσίευση από avax31 » 31 Οκτ 2009 15:32

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

<?php 
include &#40;'dbconnect.php'&#41;; 
$username=$_POST&#91;username&#93;; 
$password=md5&#40;$_POST&#91;password&#93;&#41;; 
if&#40;$username!='' && $password!='' && $error!=1&#41; 
&#123; 
$sql="SELECT * FROM usertable WHERE username='$username' AND password='$password'"; 
$result=mysql_query&#40;$sql&#41;; 
$rows=mysql_num_rows&#40;$result&#41;;
    if&#40;$rows==1&#41;&#123; 
   session_register&#40;"authenticated"&#41;; 
  $_SESSION&#91;'username'&#93; = $username; 
  header&#40;"location&#58;index.php"&#41;;
     &#125; else &#123; 
   echo "Ανεπιτυχές Login, δοκιμάστε πάλι"; 
   $error=1; &#125; 
&#125; else &#123;
?>
Να προσθεσω πως το εχω στην αρχη της σελιδας στην κορυφη του login.php δλδ. μηπως ειναι λαθος αυτο?

Άβαταρ μέλους
avax31
Δημοσιεύσεις: 95
Εγγραφή: 11 Ιουν 2009 14:16

Ένα απλό User Login σε PHP

Δημοσίευση από avax31 » 31 Οκτ 2009 15:39

κι εδω ειναι ολοκληρη η σελιδα αν βοηθαει
Συνημμένα
login.zip
(2.1 KiB) Μεταφορτώθηκε 222 φορές

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Ένα απλό User Login σε PHP

Δημοσίευση από Apostolis_38 » 31 Οκτ 2009 15:45

Στην κορυφή της σελίδας, αμέσως μετά το <?php βάλε session_start(); και δοκίμασε.

Άβαταρ μέλους
avax31
Δημοσιεύσεις: 95
Εγγραφή: 11 Ιουν 2009 14:16

Ένα απλό User Login σε PHP

Δημοσίευση από avax31 » 31 Οκτ 2009 15:51

τπτ το κανει...

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Ένα απλό User Login σε PHP

Δημοσίευση από Apostolis_38 » 31 Οκτ 2009 15:59

:evil: :evil: :evil:
$_SESSION['username'] = $row ["username"];

Άβαταρ μέλους
avax31
Δημοσιεύσεις: 95
Εγγραφή: 11 Ιουν 2009 14:16

Ένα απλό User Login σε PHP

Δημοσίευση από avax31 » 31 Οκτ 2009 16:05

καποιο λαθος στη συνταξη μαλλον
Parse error: syntax error, unexpected '[', expecting T_VARIABLE or '$' in J:\xampp\htdocs\aqua\administrator\index.php on line 5

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Ένα απλό User Login σε PHP

Δημοσίευση από Apostolis_38 » 31 Οκτ 2009 16:14

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

session_register &#40;$_SESSION&#91;"username"&#93; = $row&#91;"username"&#93;&#41;;
μετά βάλε echo $_SESSION["username"] και αμέσως exit;

Δοκίμασε αυτό και αν σου φέρει το username θα σου πω.

Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Ένα απλό User Login σε PHP

Δημοσίευση από Basilakis » 31 Οκτ 2009 16:14

Avax ρε συ, δεν ανοίγεις και λίγο το php manual? Δεν μπορείς να κάνεις τα βασικά, χωρίς λίγο διάβασμα...

Άβαταρ μέλους
avax31
Δημοσιεύσεις: 95
Εγγραφή: 11 Ιουν 2009 14:16

Ένα απλό User Login σε PHP

Δημοσίευση από avax31 » 31 Οκτ 2009 16:16

Apostolis_38 έγραψε::evil: :evil: :evil:
$_SESSION['username'] = $row ["username"];
ετσι παντως δεν δουλευε...

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

Ένα απλό User Login σε PHP

Δημοσίευση από korgr » 31 Οκτ 2009 16:19

ρε παιδια, το script σας λεω μου δουλεψε μια χαρα, μην ψαχνετε εκει το λαθος (εκτος αν αλλαξε πραγματα στον κωδικα απο τοτε που μου τον πρωτοεδωσε).

Αποστολη ειναι σωστο το

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

$_SESSION&#91;'username'&#93; = $username; 
Μην ξεχνας πως η $username ειναι η $_POST['username'] και οχι αποτελεσμα του query. Το query γινεται μονο για να μετρηθουν τα mysql rows.

Επισης το

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

echo $username = $_SESSION&#91;'username'&#93;;
πρεπει να γινει

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

echo $_SESSION&#91;'username'&#93;;

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Ένα απλό User Login σε PHP

Δημοσίευση από Apostolis_38 » 31 Οκτ 2009 16:29

Με τσάκισες.
Κατ' αρχάς εγώ είπα να κάνει

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

echo $_SESSION&#91;"username"&#93;; 
κι όχι echo $username κ.λ.π.
στο login για να δούμε αν κάνει sesion_register την εγγραφή που τραβάει από τη βάση.

Επειτα, σε τι μας χρειάζεται η POST. Στην POST μπορεί να βάλει ότι θέλει.
το θέμα είναι το POST με το QUERY να κάνουν match και να κάνει register την εγγραφή που υπάρχει στη βάση

Άβαταρ μέλους
avax31
Δημοσιεύσεις: 95
Εγγραφή: 11 Ιουν 2009 14:16

Ένα απλό User Login σε PHP

Δημοσίευση από avax31 » 31 Οκτ 2009 16:34

Apostolis_38 έγραψε:Με τσάκισες.
Κατ' αρχάς εγώ είπα να κάνει

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

echo $_SESSION&#91;"username"&#93;; 
κι όχι echo $username κ.λ.π.
στο login για να δούμε αν κάνει sesion_register την εγγραφή που τραβάει από τη βάση.

Επειτα, σε τι μας χρειάζεται η POST. Στην POST μπορεί να βάλει ότι θέλει.
το θέμα είναι το POST με το QUERY να κάνουν match και να κάνει register την εγγραφή που υπάρχει στη βάση
το εκανα και δεν βγαζει τπτ.

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Ένα απλό User Login σε PHP

Δημοσίευση από Apostolis_38 » 31 Οκτ 2009 16:42

Αρα λοιπόν δεν "φέρνει" κάτι απο τη βάση.

Δεν ξέρω αν όντως έχεις έτσι αυτό

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

$username=$_POST&#91;username&#93;; 
αλλά αν ναι θέλει
$username=$_POST["username"];

Απάντηση

Επιστροφή στο “PHP τα δικά μας scripts”

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

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