Επαλήθευση online user με id

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

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

Απάντηση
sirparis
Δημοσιεύσεις: 18
Εγγραφή: 10 Δεκ 2010 23:57
Τοποθεσία: Athens

Επαλήθευση online user με id

Δημοσίευση από sirparis » 22 Απρ 2012 02:47

έχω μία σελίδα person.php που είναι ουσιαστικά html.
Για να τη δεί κάποιος πρέπει να είναι online και αυτό το
καταφέρνω καλώντας την PHP:

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

<?PHP
require_once&#40;"./include/membersite_config.php"&#41;;

if&#40;!$fgmembersite->CheckLogin&#40;&#41;&#41;
&#123;
    $fgmembersite->RedirectToURL&#40;"Sign_in_form.php"&#41;;
    exit;
&#125;
?>
Τώρα θέλω να πάρω το id αυτού του χρήστη και να το αποθηκεύσω σε ένα άλλο, ξένο id.
Έχει κανενας λύση;;;;;

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

Επαλήθευση online user με id

Δημοσίευση από korgr » 22 Απρ 2012 09:13

Δεν χρησιμοποιείς session?

sirparis
Δημοσιεύσεις: 18
Εγγραφή: 10 Δεκ 2010 23:57
Τοποθεσία: Athens

Επαλήθευση online user με id

Δημοσίευση από sirparis » 22 Απρ 2012 12:35

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

function CheckLoginInDB&#40;$username,$password&#41;
    &#123;
        if&#40;!$this->DBLogin&#40;&#41;&#41;
        &#123;
            $this->HandleError&#40;"Database login failed!"&#41;;
            return false;
        &#125;
        $username = $this->SanitizeForSQL&#40;$username&#41;;
        $pwdmd5 = md5&#40;$password&#41;;
        $qry = "Select id, name, email from $this->tablename where
username='$username' and password='$pwdmd5' and confirmcode='y'";
 
        $result = mysql_query&#40;$qry,$this->connection&#41;;
 
        if&#40;!$result || mysql_num_rows&#40;$result&#41; <= 0&#41;
        &#123;
            $this->HandleError&#40;"Error logging in. The username or password
does not match"&#41;;
            return false;
        &#125;
 
        $row = mysql_fetch_assoc&#40;$result&#41;;
 
 
        $_SESSION&#91;'name_of_user'&#93;  = $row&#91;'name'&#93;;
        $_SESSION&#91;'email_of_user'&#93; = $row&#91;'email'&#93;;
	$_SESSION&#91;'id'&#93; = $row&#91;'id'&#93;;
 
        return true;
με αυτό γίνεται δουλεια;

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

Επαλήθευση online user με id

Δημοσίευση από korgr » 22 Απρ 2012 14:48

Η $_SESSION['id'] έχει το id του χρήστη και το κάνεις ό,τι θες. Που ακριβώς έχεις πρόβλημα;

sirparis
Δημοσιεύσεις: 18
Εγγραφή: 10 Δεκ 2010 23:57
Τοποθεσία: Athens

Επαλήθευση online user με id

Δημοσίευση από sirparis » 22 Απρ 2012 15:58

έχω κολλησει και από την άγνοια το πρόβλημα μεγαλώνει.
Έχω τον κώδικα που ελέγχει εάν είσαι μέσα ή όχι για να επεξεργαστείς σελίδα:

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

<?PHP
require_once&#40;"./include/membersite_config.php"&#41;;

if&#40;!$fgmembersite->CheckLogin&#40;&#41;&#41;
&#123;
    $fgmembersite->RedirectToURL&#40;"Sign_in_form.php"&#41;;
    exit;
&#125;
?>
Θα πρέπει να βγάλω τον παραπάνω κώδικα και να τον αντικαταστήσω με την session?
Ή θα πρέπει να την καλώ από κάτω σε κάθε σελίδα μέσα ενα script?

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

<script type="text/javascript">

function CheckLoginInDB&#40;$username,$password&#41;
    &#123;
        if&#40;!$this->DBLogin&#40;&#41;&#41;
        &#123;
            $this->HandleError&#40;"Database login failed!"&#41;;
            return false;
        &#125;
        $username = $this->SanitizeForSQL&#40;$username&#41;;
        $pwdmd5 = md5&#40;$password&#41;;
        $qry = "Select id, name, email from $this->tablename where
username='$username' and password='$pwdmd5' and confirmcode='y'";
 
        $result = mysql_query&#40;$qry,$this->connection&#41;;
 
        if&#40;!$result || mysql_num_rows&#40;$result&#41; <= 0&#41;
        &#123;
            $this->HandleError&#40;"Error logging in. The username or password
does not match"&#41;;
            return false;
        &#125;
 
        $row = mysql_fetch_assoc&#40;$result&#41;;
 
 
        $_SESSION&#91;'name_of_user'&#93;  = $row&#91;'name'&#93;;
        $_SESSION&#91;'email_of_user'&#93; = $row&#91;'email'&#93;;
   $_SESSION&#91;'id'&#93; = $row&#91;'id'&#93;;
 
        return true;

</script>

O Πίνακας μου ο κεντρικός με το login/gegister που έχει το κύριο κλειδι:

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

Table &#91;b&#93;login&#91;/b&#93;

id
username
password
Κ ένας άλλος από τους 15 πίνακες είναι ο:

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

TABLE ipopsifios

ipopsifios_id
login_id &#40; το ξένο κλειδί που "ενώνει" αυτόν τον πίνακα με τον πίνακα login και το κύριο κλειδι το id &#41;
onoma
eponymo
tilefwno
kinito
.....


Θέλω μέσα στην φόρμα που γράφει ο άλλος τα στοιχεία του τα προσωπικα (ονομα, επώνυμο, κτλ) να περναει την τιμή του id στο login_id

Απάντηση

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

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

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