Manage users site

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

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

Απάντηση
Άβαταρ μέλους
LordOfRings
Δημοσιεύσεις: 79
Εγγραφή: 22 Νοέμ 2006 01:19

Manage users site

Δημοσίευση από LordOfRings » 14 Μαρ 2007 16:18

στα πλαίσια μιας εργασιας πρεπει να κάνω ενα site τυπου e-shopping.
να εγγραφονται Users .να κανουν logIn και μετα να μπορουν να αγοράσουν..

Τι ειναι ποιο σωστό .. cookies , session or hidden inputs ?
ποιο κάνει το site more accessible ?


Ποια θα ειναι η γενική διαδικασία που πρέπει να ακολουθήσω? ..
θα ρωτάει τον χρήστη στην πρώτη σελιδα δεξια να βαλει username kai pass ? και μετα πώς θα τον αναγνωρίζει ? πάλι στην ίδια σελιδα να βγαίνουν τα στοιχεία του ?. .
ή να κανει login λιγο πρίν αγοράσει το προϊόν ? ..


κατι άλλο .. ποια η διαφορά ? των 2 φορμών παρακάτω? [/list]

Thanks .. .
Συνημμένα
a.jpg

lakritidis
Δημοσιεύσεις: 401
Εγγραφή: 04 Αύγ 2005 14:35
Τοποθεσία: Katerini
Επικοινωνία:

Manage users site

Δημοσίευση από lakritidis » 14 Μαρ 2007 18:04

Η κλασική μεθοδολογία που χρησιμοποιούμε στα login, είναι η εξής;
Αρχικά θα δημιουργήσουμε ένα πίνακα σε mysql βάση δεδομένων στον οποίο θα αποθηκεύουμε του χρήστες και τους κωδικούς πρόσβασης.

Στην αρχική σελίδα θα υπάρχουν τα δύο πεδία στα αοποία ο χρήστης θα συμπληρώνει username και password και αυτά που θα δίνει, θα συγκρίνονται με τα δεδομένα που είναι αποθηκευμένα στον πίνακα που λέγαμε. Θα υπάρχει επίσης και ένα Link προς μία σελίδα στην οποία θα μπορεί να εγγράφεται ένας νέος χρήστης.

Ας πούμε ότι κάποιος πληκτρολογεί λάθος username ή/και password. Αυτό σημαίνει ότι δε βρέθηκε εγγραφή στον πίνακα που να ικανοποιεί τα κριτήρια αυτά.

Αν τα στοιχεία του βρεθούν (επιτυχες authentication), θα δημιουργείται ένα νέο session στο οποίο θα κουβαλάμε τις πληροφορίες του χρήστη. Κάθε session χαρακτηρίζεται από ένα id. Αυτό το id Μπορούμε είτε να το κάνουμε propagation μέσω του url, είτε να το αποθηκεύουμε σε cookie στον client.

Αν θέλουμε το scriptaki μας να θυμαται τον user (γνωστό και ως remember me feature), θα πρέπει να αποθηκεύσουμε τα στοιχεία του σε cookie.

Η διαδικασία που σου περιέγραψα είναι γνωστή σαν php authentication. Το screenshot που μας δείχνεις κάνει χρήση του http authentication. Το http authentication είναι ένας εναλλακτικός τρόπος για να κάνεις το ίδιο πράγμα. Κάθε τρόπος έχει τα δικά του πλεονεκτήματα και μειονεκτήματα.

Στο php authentication πρέπει να λάβεις υπόψη σου τα προβλήματα ασφαλείας που πιθανώς να προκύψουν. Αυτά είναι
1. SQL injections που θα οφείλονται σε εσφαλμένο (ή και καθόλου) validation των στοιχείων που πληκτρολογεί ο χρήστης.
2. Session Hijacking που θα οφείλεται σε απώλεια του session id.
3. Επιθέσεις cross site scripting.

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Manage users site

Δημοσίευση από dva_dev » 14 Μαρ 2007 18:15

Η 2η φόρμα μάλλον χρησιμοποιεί/επιτρέπει anonymous connections, και χρησιμοποιεί custom authentication (user defined προφανώς σε κάποια server side γλώσσα) [edit]όπως περιγράφηκε παραπάνω.[/edit]
Οι χρήστες μπορούν έυκολα να εγγραφούν/αλλάξουν/διαγραφούν αποθηκεύοντας τα στοιχεία τους σε κάποια database/xml/text αρχείο, αλλά και να μπούν ότι άλλες πληροφορίες (ονοματεπώνυμο, τηλέφωνο, διεύθυνση, γενέθλια, φύλο, κ.λπ) μπορεί να θέλει ο δημιουργός να μπορεί να κρατήσει.
Από τη στιγμή που ο χρήστης που εγγράφεται, σαν οντότητα είναι καθαρά δημιούργημα του web developer, τι στοιχεία θα αποθηκεύονται είναι καθαρά στην κρίση αυτού. Αλλά και η ασφάλεια πλέον είναι στην ευθύνη του ίδιου. Γενικά μπορεί να είναι από ασφαλές σαν θησαυροφυλάκιο μέχρι "μπάτε σκύλοι αλέστε".

Επιπλέον μια τέτοια λύση είναι μεταφέρσιμη σε άλλο λειτουργικό σύστημα / ή άλλον server (αρκεί να έχει εγκατεστημένα αυτά που χρειάζεται το site για να παίξει: server side γλώσσα, database, κ.λπ που χρησιμοποιεί το site).


Η πρώτη φόρμα χρησιμοποιεί windows authentication (αν είναι windows, γενικά operating system authentication). Γενικά πολύ πιο ασφαλές (θησαυροφυλάκιο ή όσο ασφαλές είναι το password policy) αφού τον περιορισμό πρόσβασης τον αναλαμβάνει το λειτουργικό σύστημα.
Το κακό είναι ότι έχει μεγάλη δυσκολία η δημιουργία / διαγραφή / τροποποίηση των χρηστών, αφού πρέπει να δημιουργούνται οι χρήστες στο λειτουργικό σύστημα (για τα windows ίσως να χρησιμοποιείται το active directory αν υπάρχει κάποιος domain controller) και κατόπιν να δίνεται πρόσβαση στον iis (στις συγκεκριμένες ιστοσελίδες) πρόσβαση στον χρήστη που γράφτηκε.
Επίσης δεν έχεις τη δυνατότητα να βάζεις ότι πληροφορία θέλεις στον χρήστη (δεν μπορείς να βάλεις για παράδειγμα χρώμα μαλλιών - ιδίως για τις γυναίκες που τα βάφουν κάθε 2 μήνες θα σε παιδέψει να το ενημερώνεις), και αν χρειαστείς κάποιες τέτοιες θα πρέπει να βρείς άλλο τρόπο να τις αποθηκεύσεις (π.χ. βάση δεδομένων/xml/text αρχείο).
Σαν ασφάλεια "δεν μπάζει νερά" αλλά σου βγάζει την πίστη.

Επιπλέον δεν είναι μεταφέρσιμη λύση σε άλλο λειτουργικό σύστημα (π.χ. windows -> linux), αλλά είναι δύσκολη και η μεταφορά του σε άλλον server με το ίδιο λειτουργικό σύστημα (π.χ. Windows 1 ->Windows 2)

Είναι ίσως καλύτερο να προστατεύεις κάποιο control panel της σελίδας σου με windows authentication (φόρμα 1) (με 1 ή 2 χρήστες να έχουν πρόσβαση εκεί), και το υπόλοιπο site να το προστατεύεις με custom authentication (φόρμα 2) για να μην είναι ξέφραγο αμπέλι.

Οποιος το έχει ψάξει περισσότερο ας δώσει τα φώτα του / διορθώσει όποια λάθη.

Άβαταρ μέλους
dimsis
Reporter
Δημοσιεύσεις: 7994
Εγγραφή: 25 Ιούλ 2001 03:00

Manage users site

Δημοσίευση από dimsis » 14 Μαρ 2007 18:22

Session. Ξέχνα τα cookies και ακόμα περισσότερα τα hidden πεδία, είναι εντελώς ανασφαλές. (όχι πως με sessions έχεις 100% ασφάλεια, αλλά καμία σχέση με τα άλλα)
Στην εικόνα σου, το κάτω είναι φόρμα... έτσι θα το κάνεις με μια login form.
Σε session μεταβλητές πιθανών να κρατάει και μετά ότι έχει βάλει στο καλάθι ο χρήστης. (shopping cart).

Όσα γράφει ο lakritidis είναι πολύ σωστά.

lakritidis
Δημοσιεύσεις: 401
Εγγραφή: 04 Αύγ 2005 14:35
Τοποθεσία: Katerini
Επικοινωνία:

Manage users site

Δημοσίευση από lakritidis » 14 Μαρ 2007 18:48

Η είκόνα που δίνει ο LordOfRings είναι το λεγόμενο http authentication. Σε σελίδες που απαιτούν "αυθεντικοποίηση" του χρήστη, ο web server στέλνει τους ακόλουθους headers μέσα στο http

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

HTTP/1.1 401 Authorization Required
WWW-Authenticate: Basic realm="Protected Area"
Tότε ο browser πετάει το dialog-box (modal) που βλέπουμε στο screenshot.
Τα μειονεκτήματα:
1. Δύσκολο log out.
2. Ακόμη πιο δύσκολο log out μετά από συγκεκριμένο "νεκτρό" χρόνο
3. Είναι αδύνατο να αλλάξεις την εμφάνισηι του dialog box
4. Οι αρχάριοι χρήστες φοβούνται
5. To http authentication με php είναι διαθέσιμο μόνο όταν η php τρέχει σαν module.
6. Προστατεύει ολόκληρα directories. Και αν θέλουμε να προστατέψουμε μόνο μία σελίδα;

Άβαταρ μέλους
LordOfRings
Δημοσιεύσεις: 79
Εγγραφή: 22 Νοέμ 2006 01:19

Manage users site

Δημοσίευση από LordOfRings » 14 Μαρ 2007 19:03

ευχαριστώ παιδια. . και οι 2 forms δικες μου ειναι .. η πρώτη ειναι με hidden και η δεύτερη με sessions .

Λοιπον στην πρώτη σελιδα σε ενα σημειο θα εχω.
Login form και Link για να εγγραφεί .. .

Αν όμως κανει ο χρήστης Login ..μετα που θα τον παραπέμπει ? ...
κανονικά θα πρέπει να φεύγει η Login form και να βγάζει ...πχ (hello USER.)
και τα στοιχεια του να περνιούνται σε όλλες τις σελίδες . ..

Αυτο πως μπορεί να γίνει.... με κάποιο IF statement πριν την φόρμα ? . (η φόρμα μεσα se php ) ...
Οταν πάει να αγορασει τα προιόντα και δεν εχει κανει Login θα τον πηγαίνει σε σελίδα να κάνει ? .. . ετσι το φαντάζομαι ..


Ευχαριστώ..

lakritidis
Δημοσιεύσεις: 401
Εγγραφή: 04 Αύγ 2005 14:35
Τοποθεσία: Katerini
Επικοινωνία:

Manage users site

Δημοσίευση από lakritidis » 14 Μαρ 2007 19:16

Όταν θα συνδεθεί ο user θα ανοίξεις ένα session και μέσα θα βάλεις μία τιμή. Όταν η τιμή θα είναι 1 (ας πούμε), τότε ο χρήστης θα έχει συνδεθεί.

Τα sessions είναι μικρά αρχειάκια που μένουν ανοιχτά όσο είναι ανοιχτός o browser και μπορείς να έχεις πρόσβαση στο περιεχόμενο τους από όλες τις σελιδες σου.

Το if που λες είναι ένας τρόπος, αφού όμως διαβάσεις το περιεχόμενο του session.

Άβαταρ μέλους
skeftomilos
Script Master
Δημοσιεύσεις: 2888
Εγγραφή: 07 Ιαν 2005 07:22
Τοποθεσία: Αθήνα

Manage users site

Δημοσίευση από skeftomilos » 14 Μαρ 2007 20:38

Νομίζω η καλύτερη επιλογή είναι με cookie. Το πλεονέκτημα είναι ότι επιτρέπει την προσθήκη checkbox "Remember me" ώστε να μπορεί να μπαίνει ο χρήστης στο site χωρίς login (εκτός από την πρώτη φορά φυσικά). Για να γίνει αυτό απλά ορίζουμε ως expires date του cookie την ημερομηνία 1/1/2060. :-)
The pure and simple truth is rarely pure and never simple. Ο μη νους δε σκέπτεται μη σκέψεις για το τίποτα.

lakritidis
Δημοσιεύσεις: 401
Εγγραφή: 04 Αύγ 2005 14:35
Τοποθεσία: Katerini
Επικοινωνία:

Manage users site

Δημοσίευση από lakritidis » 14 Μαρ 2007 21:31

Ναι, αλλά αυτό δεν αποκλείει τη χρήση sessions. Τα περισσότερα login scripts με remember me είναι ένας συνδυασμός sessions με cookies.

Βασικά όπως βολεύεται ο καθένας. Εγώ προτιμώ sessions.

Άβαταρ μέλους
LordOfRings
Δημοσιεύσεις: 79
Εγγραφή: 22 Νοέμ 2006 01:19

Manage users site

Δημοσίευση από LordOfRings » 15 Μαρ 2007 14:02

Tελικά θα χρησιμοποιήσω session.

Για να κάνω validate την φόρμα ..
Javascript η PHP να χρησιμοποιήσω. . . .

Πιστεύω javascript δίνει ποιο άμμεσο μήνυμα άλλα καποιος μπορει να την εχει απενεγοποιήμένη. ..

Έχουμε κανενα ετοιμο scriptaki για validation e-mail και για password confirmation. ? ..

Τhanks

Άβαταρ μέλους
LordOfRings
Δημοσιεύσεις: 79
Εγγραφή: 22 Νοέμ 2006 01:19

Manage users site

Δημοσίευση από LordOfRings » 15 Μαρ 2007 20:05

lakritidis έγραψε:Όταν θα συνδεθεί ο user θα ανοίξεις ένα session και μέσα θα βάλεις μία τιμή. Όταν η τιμή θα είναι 1 (ας πούμε), τότε ο χρήστης θα έχει συνδεθεί.

Τα sessions είναι μικρά αρχειάκια που μένουν ανοιχτά όσο είναι ανοιχτός o browser και μπορείς να έχεις πρόσβαση στο περιεχόμενο τους από όλες τις σελιδες σου.

Το if που λες είναι ένας τρόπος, αφού όμως διαβάσεις το περιεχόμενο του session.
Δεν κατάφερα να το κάνω ..
session[Flag]=1;

If(sessionFlag==1)
{ form..

}

if submit ..

{
check in database for the same username and pass..

sessionFlag=3

}

kapos etsi prepei na einai ?. . ..


η φόρμα εχει μονο email και pass
και εαν statement αν πατησει λάθος username - relogin ..

καμιά ιδεα. ? ..

lakritidis
Δημοσιεύσεις: 401
Εγγραφή: 04 Αύγ 2005 14:35
Τοποθεσία: Katerini
Επικοινωνία:

Manage users site

Δημοσίευση από lakritidis » 16 Μαρ 2007 13:55

Προσοχή στη σύνταξη. Η session είναι μία superglobal και συντάσσεται έτσι: $_SESSION.

To validation που ρωτάς παραπάνω θα γίνεται με php γιατί μόνο με php μπορείς να ανοίξεις και να ελέγξεις αν υπάρχει η εγγραφή στη βάση δεδομένων. Th Javascript μπορείς να τη χρησιμοποιήσεις για client-side ελέγχους, όπως πχ, αν έχουν συμπληρωθεί το username και το password.

Ξεκινώντας ένα session, θα πρέπει να ορίσουμε το session id, με το οποίο μπορούμε να αναγνωρίζουμε τον κάθε χρήστη. Η παρακάτω function παράγει ένα τυχαίο string με μήκος $length, που μπορεί να χρησιμοποιήθει σαν session id:

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

function generateRandStr ($length) {
	$randstr = "";
	for &#40;$i = 0; $i < $length; $i++&#41; &#123;
		$randnum = mt_rand&#40;0, 61&#41;;
		if &#40;$randnum < 10&#41;&#123;
			$randstr .= chr &#40;$randnum + 48&#41;;
		&#125; else if &#40;$randnum < 36&#41; &#123;
			$randstr .= chr &#40;$randnum + 55&#41;;
		&#125; else &#123;
			$randstr .= chr &#40;$randnum + 61&#41;;
		&#125;
	&#125;
	return $randstr;
&#125;
Το session id το κρυπτογραφούμε για λόγους ασφαλείας. Στο παρακάτω παράδειγμα χρησιμοποιώ τον md5 αλγόριθμο. Όταν λοιπόν o user έχει δώσει σωστό username και password (εννοείται ότι έχει προηγηθεί ο έλεγχος για το αν είναι σωστά τα credentials) τότε δημιουργούμε ένα νεό session και βάζουμε την flag ίση με 1.

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

session_start&#40;&#41;;
$_SESSION&#91;'sesid'&#93; = md5&#40;generateRandStr&#40;16&#41;&#41;;
$_SESSION&#91;'Flag'&#93; = 1;
Σε κάθε σελίδα σου μπορείς να ελέγχεις αν ο user έχει συνδεθεί έτσι:

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

if&#40;$_SESSION&#91;'Flag'&#93; == 1&#41; &#123; 
echo 'welcome user';
&#125; else &#123;
echo 'authorization required';
&#125;

Άβαταρ μέλους
LordOfRings
Δημοσιεύσεις: 79
Εγγραφή: 22 Νοέμ 2006 01:19

Manage users site

Δημοσίευση από LordOfRings » 16 Μαρ 2007 14:54

έκανα μια προσπάθεια και φένεται να δουλεύει.. .
Και πανω στη σελίδα εχω ενα php if isset session(email) να τυπώνε welcome session(email)
..
πως το βλέπετε ?

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

<?php session_start&#40;&#41;;
function generateRandStr &#40;$length&#41; &#123;
   $randstr = "";
   for &#40;$i = 0; $i < $length; $i++&#41; &#123;
      $randnum = mt_rand&#40;0, 61&#41;;
      if &#40;$randnum < 10&#41;&#123;
         $randstr .= chr &#40;$randnum + 48&#41;;
      &#125; else if &#40;$randnum < 36&#41; &#123;
         $randstr .= chr &#40;$randnum + 55&#41;;
      &#125; else &#123;
         $randstr .= chr &#40;$randnum + 61&#41;;
      &#125;
   &#125;
   return $randstr;
&#125;


$_SESSION&#91;'sesid'&#93; = md5&#40;generateRandStr&#40;16&#41;&#41;;


if &#40;$_SESSION&#91;'email'&#93;==NULL&#41;&#123;
$pass=$_POST&#91;'pass'&#93;;
		$email=$_POST&#91;'email'&#93;;
		$encrypt=md5&#40;$pass&#41;;
&#125;

if&#40;$email!='' && $encrypt!=''&#41;
&#123;
$sql="SELECT * FROM passwd WHERE email='$email' AND password='$encrypt'";

$result=mysql_query&#40;$sql&#41;;
$rows=mysql_num_rows&#40;$result&#41;;


   if &#40;$rows==1&#41;&#123;
   echo "Welcome $email <br>Enjoy Shopping..";
   print "<a href=\"registration/logout.php\">log out!!</a>";
   
   $_SESSION&#91;'flag'&#93;=1;
    $_SESSION&#91;'email'&#93;=$email;
   &#125; else
   
    &#123;
   print "Login Failed. <a href='$PHP_SELF' >Try again.</a>";
  &#125;
&#125;



else  if &#40;$_SESSION&#91;'flag'&#93;!=1&#41; &#123;
echo "Login";
echo "<form action='$PHP_SELF' method=\"post\">";
print "E-mail&#58;<br><input type=\"text\" name=\"email\"><br>";	
	print "Password&#58;<br><input type=\"password\" name=\"pass\"><br>";	
	print "<br><input type=\"submit\" name=\"submit\" value=\"Log In\" ></form>";

 &#125;
 
 ?>

lakritidis
Δημοσιεύσεις: 401
Εγγραφή: 04 Αύγ 2005 14:35
Τοποθεσία: Katerini
Επικοινωνία:

Manage users site

Δημοσίευση από lakritidis » 16 Μαρ 2007 17:06

Το κομμάτι

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

if &#40;$_SESSION&#91;'email'&#93;==NULL&#41;&#123;
      $pass=$_POST&#91;'pass'&#93;;
      $email=$_POST&#91;'email'&#93;;
      $encrypt=md5&#40;$pass&#41;;
&#125;
φαντάζομαι ότι αφορά στο τι θα συμβεί αν πατήσει ο user το submit.
Καλύτερα έτσι

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

if &#40;isset&#40;submit&#41;&#41;&#123;
      $pass=$_POST&#91;'pass'&#93;;
      $email=$_POST&#91;'email'&#93;;
      $encrypt=md5&#40;$pass&#41;;
&#125;
Ψάξε λίγο και για sql injections στο google.

Άβαταρ μέλους
_Invisible_
Δημοσιεύσεις: 418
Εγγραφή: 16 Νοέμ 2006 16:47
Τοποθεσία: Greece

Manage users site

Δημοσίευση από _Invisible_ » 16 Μαρ 2007 18:16

πιστεύω ότι έτσι θα ήταν πολύ καλύτερα:

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

<?php

session_start&#40;&#41;;

function generateRandStr &#40;$length&#41;
&#123;
	$randstr = '';

	for &#40;$i = 0; $i < $length; $i++&#41;
	&#123;
		$randnum = mt_rand&#40;0, 61&#41;;

		if &#40;$randnum < 10&#41;
		&#123;
			$randstr .= chr &#40;$randnum + 48&#41;;
		&#125;
		else if &#40;$randnum < 36&#41;
		&#123;
			$randstr .= chr &#40;$randnum + 55&#41;;
		&#125;
		else
		&#123;
			$randstr .= chr &#40;$randnum + 61&#41;;
		&#125;
	&#125;

   return $randstr;
&#125;


	$_SESSION&#91;'sesid'&#93; = md5&#40;generateRandStr&#40;16&#41;&#41;;

	if &#40;isset&#40;$_POST&#91;'submit'&#93;&#41;&#41;
	&#123;
		//$pass = mysql_real_escape_string&#40;$_POST&#91;'pass'&#93;&#41;;
		//$email = mysql_real_escape_string&#40;$_POST&#91;'email'&#93;&#41;;

		$pass = &#40;isset&#40;$_POST&#91;'pass'&#93;&#41;&#41; ? mysql_real_escape_string&#40;$_POST&#91;'pass'&#93;&#41; &#58; '';
		$email = &#40;isset&#40;$_POST&#91;'email'&#93;&#41;&#41; ? mysql_real_escape_string&#40;$_POST&#91;'email'&#93;&#41; &#58; '';
		$encrypt = md5&#40;$pass&#41;;

		if &#40;$email == '' || $encrypt == ''&#41;
		&#123;
			die&#40;"Please field in all fields."&#41;;
		&#125;
		else
		&#123;
			if &#40;$email != '' && $encrypt != ''&#41;
			&#123;
				$sql = "SELECT * 
						FROM passwd 
						WHERE email = '" . $email . "' 
						AND password = '" . $encrypt . "'";

				$result = mysql_query&#40;$sql&#41;;
				$rows = mysql_num_rows&#40;$result&#41;;

				if &#40;$rows == 1&#41;
				&#123;
					echo "Welcome " . $email . " <br />Enjoy Shopping..";
					print "<a href=\"registration/logout.php\">log out!!</a>";

					$_SESSION&#91;'flag'&#93; = 1;
					$_SESSION&#91;'email'&#93; = $email;
				&#125;
				else
				&#123;
					print "Login Failed. <a href='" . $_SERVER&#91;'PHP_SELF'&#93; . "' >Try again.</a>";
				&#125;

			&#125;

		&#125;
	&#125;
	else
	&#123;
		echo "<div align=\"center\">
			<form action=\"" . $_SERVER&#91;'PHP_SELF'&#93; . "\" method=\"post\">
			<fieldset>
			<legend>Login</legend>
			<p>Username&#58; <input type=\"text\" name=\"email\" title=\"Username\" /></p>
			<p>Password&#58; <input type=\"password\" name=\"pass\" title=\"Password\" /><br /></p>
			<p><input type=\"submit\" name=\"submit\" title=\"Submit\" value=\"Submit\" /></p>
			</fieldset>
			</form>
			</div>";

	&#125;

?>
όπως βλέπεις χρησιμοποιώ το function mysql_real_escape_string() που αποτρέπει τα SQL Injections. Επίσης το:

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

		$pass = &#40;isset&#40;$_POST&#91;'pass'&#93;&#41;&#41; ? mysql_real_escape_string&#40;$_POST&#91;'pass'&#93;&#41; &#58; '';
		$email = &#40;isset&#40;$_POST&#91;'email'&#93;&#41;&#41; ? mysql_real_escape_string&#40;$_POST&#91;'email'&#93;&#41; &#58; '';

επιστρέφει το $_POST['pass'] και $_POST['email'] αν έχουν υποβληθεί τα πεδία, αλλιώς δεν επιστρέφει τίποτα. Αν δεν έχουν συμπληρωθεί και τα 2 πεδία, έβαλα στο script να πετάει σφάλμα, ζητώντας να συμπληρωθούν και τα 2 πεδία.

Ελπίζω να βοήθησα.

Απάντηση

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

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

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