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

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

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

Απάντηση
Άβαταρ μέλους
billt
Δημοσιεύσεις: 1175
Εγγραφή: 20 Φεβ 2004 16:17
Τοποθεσία: Θεσσαλονίκη

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

Δημοσίευση από billt » 18 Ιαν 2008 19:51

merkutios έγραψε:poly wraio to script! se eyxaristw poly proswpika gia thn genaiodwria sou, giati me vohthaei poly sthn katanohsh ths php(san arxarios p eimai :D). h erwthsh mou einai: ti tha prepei na prosthesoume gia na baloume kai account activation? (afou fysika peiraxoume ligo thn bash dedomenwn?

:)
Geia sou kai euchaisto gia ta kala sou logia. Gia account activation prota ap ola tha prepei o christis na grafete monos tou kai ta stichia tis forma na katachorounte sti vasi (meta apo elegxo). Epipleon tha iparxei ston pinaka ton xriston kai ena pedio active pou default tha einai 'no'.

Otan kapoios egrafete prostithente ta stoixeia sti vasi kai epipleon to neo pedio 'active' tha einai 'no. Paralila me to submit tis formas eggrafis ginete mia apostoli me email (php function mail() enos link se kapoio iposelido tou site px activate.php?id=...... opou sto id tha einai kapoios arithmos eggrafis (kryptografimenos) .

Patontas sto link paei sti selida activate.php opou lamvanete to id kai eteleitei ena query sti vasi (Update users .....where id=... ktl) tote tha allazei to pedio active apo 'no' se 'yes'

Epipleon otan tha kaneis elegxo gia login tha prepei ektos apo elegxo username kai password na ginete kai elegxos oti active='yes'

Ayta ta liga en sintomia :)

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

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

Δημοσίευση από vassilism » 17 Φεβ 2008 20:34

billt
Στη login.php θα κάνεις μια προσθήκη :

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

$sql="SELECT * FROM usertable WHERE username='$username' AND password='$password'"; 
$result=mysql_query($sql); 
$rows=mysql_num_rows($result); 


   if ($rows==1){ 
   session_register("authenticated"); 
  $_SESSION['username'] = $username; 
  echo "Επιτυχής Login"; 
   } else { 
   echo "Ανεπιτυχές Login, δοκιμάστε πάλι"; 
   $error=1; } 
}  

Στη σελίδα members.php που θέλεις να κατευθύνεις το χρήστη θα καλέσεις τη μεταβλητή $username με το

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

<? 
session_start&#40;&#41;; 
if&#40;!session_is_registered&#40;authenticated&#41;&#41;&#123; 
header&#40;"location&#58;login.php"&#41;; 
&#125; 
 $username=$_SESSION&#91;'username'&#93;; 
?> 

και θα τη βάλεις σε ένα query για να πάρεις τα σχετικά με τον συγκεκριμένο χρήστη.
Έφτιαξα ένα αρχείο με όνομα loginstatus και το πρόσθεσα σε όλες τις σελίδες μου για να φαίνετε το όνομα χρήστη που έχει κάνει login.
Ενώ στην αρχή φαίνετε κανονικά το όνομα χρήστη, κατά την πλοήγηση και μετά από λίγη ώρα το χάνει.
Τι μπορεί να συμβαίνει και γίνετε αυτό?

Άβαταρ μέλους
billt
Δημοσιεύσεις: 1175
Εγγραφή: 20 Φεβ 2004 16:17
Τοποθεσία: Θεσσαλονίκη

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

Δημοσίευση από billt » 17 Φεβ 2008 21:36

στο php.ini exei exei tin parametro "session.cookie_lifetime" valti isi me 0

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

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

Δημοσίευση από vassilism » 17 Φεβ 2008 22:54

Το php.ini που είναι?
Είναι κάποιο αρχείο στον Apache? :think:
Εκτός από αυτόν τον τρόπο, μήπως μπορώ να ορίσω cookie στην σελίδα μου?

Άβαταρ μέλους
billt
Δημοσιεύσεις: 1175
Εγγραφή: 20 Φεβ 2004 16:17
Τοποθεσία: Θεσσαλονίκη

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

Δημοσίευση από billt » 18 Φεβ 2008 00:11

pou trexeis to script? topika i se server filoxenias?

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

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

Δημοσίευση από vassilism » 18 Φεβ 2008 00:34

Και τοπικά και σε server.
Τοπικά που μπορώ να το βρώ?

Άβαταρ μέλους
billt
Δημοσιεύσεις: 1175
Εγγραφή: 20 Φεβ 2004 16:17
Τοποθεσία: Θεσσαλονίκη

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

Δημοσίευση από billt » 18 Φεβ 2008 01:23

sto fakelo php tou server pou exeis stisei

an den to vriskeis trexe ena search son ipologisti sou gia php.ini

Prosoxi:otan kaneis allages sto php.ini prepei na kaneis epanekinisi ton apache

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

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

Δημοσίευση από vassilism » 18 Φεβ 2008 02:55

Τοπικά δουλεύω τον apache2triad, αλλά δεν υπάρχει το αρχείο php.ini
Μπορώ να κάνω κάτι άλλο?

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

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

Δημοσίευση από vassilism » 18 Φεβ 2008 03:56

Τελικά το βρήκα το php.ini ήταν στον φάκελο των windows.
Αλλά η παράμετρός session.cookie_lifetime ήταν ήδη 0.

Να υπενθυμίσω ότι το όνομα χρήστη δεν το χάνει αμέσως αλλά μετά από κάποιο χρονικό διάστημα και εφόσον μεταβαίνω από σελίδα σε σελίδα.

Άβαταρ μέλους
billt
Δημοσιεύσεις: 1175
Εγγραφή: 20 Φεβ 2004 16:17
Τοποθεσία: Θεσσαλονίκη

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

Δημοσίευση από billt » 18 Φεβ 2008 09:12

ipethesa oti kanei expire to session, alla afou einai 0 einai ok.

de mporw na fantasto auti ti stigmi ti mporei na ftaiei ...

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

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

Δημοσίευση από vassilism » 18 Φεβ 2008 15:07

Σευχαριστώ πολύ πάντως, θα το συζητήσω και στην περιοχή προγραμματισμός php να δω αν μπορεί να διορθωθεί.

Άβαταρ μέλους
alexpant2
Δημοσιεύσεις: 130
Εγγραφή: 13 Αύγ 2008 23:42
Επικοινωνία:

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

Δημοσίευση από alexpant2 » 25 Αύγ 2008 21:26

#$^^&*()__)(*&^%$%^&*()
Τελευταία επεξεργασία από το μέλος alexpant2 την 20 Σεπ 2008 19:57, έχει επεξεργασθεί 1 φορά συνολικά.

Άβαταρ μέλους
alexpant2
Δημοσιεύσεις: 130
Εγγραφή: 13 Αύγ 2008 23:42
Επικοινωνία:

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

Δημοσίευση από alexpant2 » 20 Σεπ 2008 19:56

Ρε παιδιά δημιουργώ τον πινακα και μετά με βγάζει εδώ . Τώρα τι κάνω
Συνημμένα
Χωρίς τίτλο.jpg

Άβαταρ μέλους
alexpant2
Δημοσιεύσεις: 130
Εγγραφή: 13 Αύγ 2008 23:42
Επικοινωνία:

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

Δημοσίευση από alexpant2 » 20 Σεπ 2008 20:33

Αφου μου πειτε τι κανω στην πανω περιπτωση μπορειτε να μου εξειγησετε γιατι μ βγαζει αυτο οταν παταω εγγραφη

Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home/www/mylyrics1.freehostia.com/register.php on line 2

Parse error: parse error, unexpected T_INCLUDE in /home/www/mylyrics1.freehostia.com/register.php on line 2

Η ΔΙΑΔΙΚΑΣΙΑ ΠΟΥ ΑΚΟΛΟΥΘΗΣΑ ΗΤΑΝ

1.Δημιουργησα αρχεία με τους κώδικες . 3 για την ακριβεια (dbconnect.php , register.php K logout.php )
2. Έφτιαξα λινκ "εγγραφή" που να πηγαίνει στο register.php και
3. Ανέβασα την ιστοσελίδα.

Και μετά όταν πάτησα εγγραφή μ εβγαλε το παραπάνω σφαλμα!!!

τι εκανα λαθος

antoo
Δημοσιεύσεις: 8
Εγγραφή: 11 Φεβ 2008 15:17

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

Δημοσίευση από antoo » 15 Οκτ 2008 12:46

Πολύ καλό το βοήθημά σου bilt. Θα ήθελα να σε ρωτήσω κάτι. Έχω κάνει register, login και θέλω να τελειώσω με το logout. Πάνω δεξιά στη σελίδα έχω βάλει να εμφανίζεται αποσύνδεση και δίπλα το όνομα του συνδεδεμένου. Θέλω όμως αυτό να εμφανίζεται σε όλες τις σελίδες μέχρι να γίνει αποσύνδεση. Ποιος είναι περίπου αυτός ο έλεγχος ; Και επίσης σίγουρα όταν έχει γίνει login, δε θα πρέπει να μπορείς πλέον να κάνεις login. Ξέρεις περίπου πώς μπορώ να τα διορθώσω αυτά; Ευχαριστώ εκ των προτέρων για το χρόνο σου.

Απάντηση

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

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

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