freestuff.gr αρχική σελίδα
 FAQFAQ    ΑναζήτησηΑναζήτηση   Λίστα ΜελώνΛίστα Μελών   Ομάδες ΜελώνΟμάδες Μελών   <b>Εγγραφή Μέλους</b>Εγγραφή Μέλους 
 ΠροφίλΠροφίλ   Επιλογές μέλους Επιλογές   Τα bookmarks μου Τα bookmarks μου   Προσωπικά μηνύματαΠροσωπικά μηνύματα 
  διαφήμιση  

Καλώς ήρθατε στο forum μας! Για να συμμετάσχετε στις συζητήσεις θα πρέπει να είσαστε μέλος. Γίνετε μέλος τώρα!.

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


 Forum index » Δημιουργία Web Sites, Γραφικών & Προγραμματισμός » PHP Προγραμματισμός και εφαρμογές » PHP τα δικά μας scripts
Moderators:  PHP Moderators, Super-Moderators, WebDev Moderators
Εισαγωγή νέου Θέματος   Απάντηση στο Θέμα Σελίδα 15 από 16 [240 Μηνύματα]      Bookmarks Tags: php Mark the topic unread :: Προηγούμενο θέμα :: Επόμενο θέμα
Σελίδα:  Προηγούμενο  1, 2, 3, ..., 13, 14, 15, 16 Επόμενο
ΑποστολέαςΜήνυμα
avax31


Μέλος από: 11 Ιουν 2009
Μηνύματα: 95

View users profile
ΜήνυμαΣτις: 03 Νοε 2009 12:57    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Apostolis_38 ανέφερε:
avax31 ανέφερε:
Παιζει οι εγγραφες που κανω στη βαση δεδομενων να μην εγγραφονται ολες, αλλα και αυτες που εγγραφονται να μπαινουν σε αλλες θεσεις?


Δηλαδή από τις 6 να καταχωρούνται οι 3; Μόνο αν υπάρχουν προβλήματα σύνδεσης με τη βάση. Πιθανολογώ και αν υπάρχει κάποιο request time out. Αλλά και στις δύο περιπτώσεις θα τυπωθεί στην οθόνη σφάλμα. είτε από την php είτε από τον Apache.
Το δεύτερο που λές, δεν το πολυκατάλαβα. Τι εννοείς σε άλλες θέσεις; Σε άλλο πίνακα της βάσης; Σε λάθος πεδία του πίνακα; Οπως και να 'χει είναι θέμα του insert. Τα δεδομένα καταχωρούνται με τη σειρά που είναι τα fields του πίνακα. Δεν περιμένουμε να αρχίσουν η php και η mysql της μαντεψιές.

Εννοω πως αν και εχω βάλει τα στοιχεια του πινακα με την ιδια σειρα που κανω insert τις μεταβλητες μου, το πρωτο insert πχ μπαινει σωστα στο πρωτο στοιχειο του πινακα. Στη συνεχεια το δευτερο μενει κενο αν και στελνω μεταβλητη, το τριτο στοιχειο του πινακα καταλαμβανεται απο την τεταρτη στη σειρα μεταβλητη και γενικα γινεται ενα μπαχαλο. προφανως εχει να κανει με του οτι δεν εχω σωστη επικοινωνια με την βαση. Αυτο ηθελα να μαθω. Ευχαριστω πολυ.
Υ.Γ.1 Μα και φυσικα δεν περιμενουμε να αρχισουν μαντεψιες. Η λογικη λεει πως με τη σειρα που τα δινεις με την ιδια σειρα πρεπει να καταχωρουνται :]
Υ.Γ.2 Παραταυτα μηνυμα λαθους δεν μου βγαζει εκτος αν το εμφανιζει καπου που δεν γνωριζω να κοιταξω
Apostolis_38


Μέλος από: 14 Φεβ 2008
Μηνύματα: 256+
Περιοχή: ΠΕΙΡΑΙΑΣ
View users profile
ΜήνυμαΣτις: 03 Νοε 2009 13:57    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

avax31 ανέφερε:

Εννοω πως αν και εχω βάλει τα στοιχεια του πινακα με την ιδια σειρα που κανω insert τις μεταβλητες μου, το πρωτο insert πχ μπαινει σωστα στο πρωτο στοιχειο του πινακα. Στη συνεχεια το δευτερο μενει κενο αν και στελνω μεταβλητη, το τριτο στοιχειο του πινακα καταλαμβανεται απο την τεταρτη στη σειρα μεταβλητη και γενικα γινεται ενα μπαχαλο. προφανως εχει να κανει με του οτι δεν εχω σωστη επικοινωνια με την βαση. Αυτο ηθελα να μαθω. Ευχαριστω πολυ.
Υ.Γ.1 Μα και φυσικα δεν περιμενουμε να αρχισουν μαντεψιες. Η λογικη λεει πως με τη σειρα που τα δινεις με την ιδια σειρα πρεπει να καταχωρουνται :]
Υ.Γ.2 Παραταυτα μηνυμα λαθους δεν μου βγαζει εκτος αν το εμφανιζει καπου που δεν γνωριζω να κοιταξω


Εστω οτι έχεις έναν πίνακα με id - name - phone - comments.
Το insert θα είναι
κώδικας:
$id,$name,$phone,$comments
, άσχετα με ποιά σειρά τα καταχωρεί ο χρήστης.
Ορθογραφικά λάθη απαγορεύονται δια ροπάλου. Το $coments δεν είναι το ίδιο με το $comments
Το ίδιο και λάθος τύπος δεδομένων, π.χ. κείμενο σε int πεδίο.

Υ.Γ. παράτα το flashάκι και στήσε έναν server της προκοπής στο pc σου.
avax31


Μέλος από: 11 Ιουν 2009
Μηνύματα: 95

View users profile
ΜήνυμαΣτις: 04 Νοε 2009 01:26    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

το εχω κανει ακριβως οπως λες :]
Δυστυχως η ευτυχως ειναι αναγκη να ασχοληθω και με αυτο. Προς το παρον το παγωνω ομως και στρεφομαι στο να στησω τον server.
Και ο Θεος βοηθος...
stevebat
Script Master

Μέλος από: 05 Αυγ 2009
Βοηθήματα: 3
Νέα: 1
Scripts: 2
Μηνύματα: 256+


View users profile
twitter friendfeed deviantART 
ΜήνυμαΣτις: 01 Ιαν 2010 14:12    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

πως θα το κάνω να κοιτάει αν το e-mail που έβαλε ο χρήστης στο register δεν το χρησιμοποιεί ένα άλλο μέλος??

παρακάτω ο κώδικας!!!!

κώδικας:
<?php
include ('dbconnect.php');
$username=$_POST[username];
$password=md5($_POST[password]);
$email=$_POST[email];
$sqlcheck="SELECT * FROM usertable WHERE username='$username' ";
$resultcheck=mysql_query($sqlcheck);
$rowscheck=mysql_num_rows($resultcheck);
if ($rowscheck!=0) {
echo "Ο χρήστης υπάρχει ηδη";
} else {
if($username!='' && $password!='')
{
$sql="INSERT INTO `usertable` ( `id` , `username` , `password` ,`email`) VALUES ('', '$username', '$password' ,'$email')";
mysql_query($sql);
echo " Ευχαριστούμε για την εγγραφή σας ";
echo '<meta http-equiv="refresh" content="1; index.php">';
?>



ευχαριστώ
billt


Μέλος από: 20 Φεβ 2004
Βοηθήματα: 1
Scripts: 1
Μηνύματα: 256+

Περιοχή: Θεσσαλονίκη
View users profile
ΜήνυμαΣτις: 01 Ιαν 2010 19:17    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Αλλαξε αυτό
κώδικας:
$sqlcheck="SELECT * FROM usertable WHERE username='$username' ";


σε
κώδικας:
$sqlcheck="SELECT * FROM usertable WHERE username='$username' or email='$email' ";

_________________
E-Commerce Services , Official Google Partner , My Interview
Affiliate Management: Urbangreen (SaS), Ladopano (LW) , e-mpomponiera (LW)
stevebat
Script Master

Μέλος από: 05 Αυγ 2009
Βοηθήματα: 3
Νέα: 1
Scripts: 2
Μηνύματα: 256+


View users profile
twitter friendfeed deviantART 
ΜήνυμαΣτις: 01 Ιαν 2010 19:20    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

αααα ωραία δούλεψε σε ευχαριστώ πολύ φίλε!!!!
navoudohonosoras


Μέλος από: 03 Ιουλ 2009
Μηνύματα: 7

View users profile
ΜήνυμαΣτις: 16 Ιαν 2010 01:09    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

mariosal ανέφερε:
Κάθισα και έφτιαξα μία γρηγορότερη και πιο απλή έκδοση του ήδη υπάρχον script. Κάνει την ίδια ακριβώς δουλειά και πιστεύω ότι τώρα είναι πιο εύκολο έτσι όπως το έκανα. Δεν το έχω testάρει άλλα πρέπει να δουλεύει σωστά.

Εκτελούμε το ακόλουθο SQL query σε μία MySQL βάση δεδομένων

κώδικας:
CREATE TABLE table_name (
id int UNSIGNED AUTO_INCREMENT,
username TEXT NOT NULL,
password TEXT NOT NULL,
PRIMARY KEY ( id )
);


Έπειτα φτιάχνουμε ένα .php αρχείο στο οποίο θα βάλουμε τον ακόλουθο κώδικα για την εγγραφή

κώδικας:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Register</title>
</head>

<body>
<?php
session_start();
if (session_is_registered('authenticated'))
   die('Έχετε εγγραφεί ήδη</body></html>');
mysql_connect('localhost', 'databe_username', 'database_userpassword')or die(mysql_error());
mysql_select_db('database_name') or die(mysql_error());
if (!empty($_POST['username']) && !empty(md5($_POST['password']))) {
   mysql_query("INSERT INTO table_name (username, password) VALUES ('".mysql_real_escape_string(htmlspecialchars($_POST['username']))."', '".mysql_real_escape_string((md5($_POST['password']))."')");
   die('Ευχαριστούμε για την εγγραφή σας</body></html>');
}
?>
<form action="<?=($_SERVER['PHP_SELF']);?>" method="post">
Username: <input name="username" type="text" size="40" />
<br>
Password: <input name="password" type="password" size="40" />
<br>
<input name="submit" type="submit" value="register" />
</form>
</body>
</html>


Έπειτα φτιάχνουμε ένα .php αρχείο στο οποίο θα βάλουμε τον ακόλουθο κώδικα για την είσοδο

κώδικας:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login</title>
</head>

<body>
<?php
if (session_is_registered('authenticated'))
   die('Έχετε συνδεθεί ήδη ήδη</body></html>');
mysql_connect('localhost', 'databe_username', 'database_userpassword')or die(mysql_error());
mysql_select_db('database_name') or die(mysql_error());
if (!empty($_POST['username']) && !empty(md5($_POST['password']))) {
   $rows = mysql_num_rows(mysql_query("SELECT username, password FROM table_name WHERE username='".mysql_real_escape_string($_POST['username'])."' AND password='".mysql_real_escape_string(md5($_POST['password']))."'"));
   if ($rows==1) {
      session_register('authenticated');
      die('Επιτυχής Login</body></html>');
   }
   else
      echo('Ανεπιτυχές Login, δοκιμάστε πάλι');
}
?>
<form action="<?=($_SERVER['PHP_SELF']);?>" method="post">
Username: <input name="username" type="text" size="40" />
<br>
Password: <input name="password" type="password" size="40" />
<br>
<input name="submit" type="submit" value="Login" />
</form>
</body>
</html>


Για να κάνει κάποιος logout φτιάχνουμε ένα αρχείο .php και βάζουμε τον ακόλουθο κώδικα

κώδικας:
<?php
session_start();
session_destroy();
echo('Log Out');
?>


Εάν θέλετε να επιτρέπετε είσοδο σε μία σελίδα μόνο για όσους έχουν πραγματοποιήσει είσοδο γράφουμε τον ακόλουθο κώδικα

κώδικας:
<?php
session_start();
if (!session_is_registered('authenticated'))
   header('login.php');
?>


χρησιμοποιησα τον παραπανω για login register ....

σε οτι αφορα το login μου βγαζει error στο
κώδικας:
if (!empty($_POST['username']) && !empty(md5($_POST['password'])))


"Fatal error: Can't use function return value in write context " ...
almark


Μέλος από: 17 Μαρ 2010
Μηνύματα: 4

View users profile
ΜήνυμαΣτις: 17 Μαρ 2010 09:20    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Παιδιά help...Έχω αγανακτήσει με την php. Κάνω μια σέλιδα ως πτυχιακή για τη σχολή μου και δεν λέει να τρέξει με τίποτα...

Η αρχική σελίδα είναι αυτή:
κώδικας:

<html>
<head>
<title>E-Class </title>
</head>


<frameset rows="100,*" frameborder="0" framespacing="0" bordercolor="#FF0000">
<frame src="MainTop.html" name="Top" scrolling="no" id="Top">

<frameset rows="*" cols="250,*" framespacing="0" frameborder="no" border="0" bordercolor="#FF0000">
<frame src="MainLeft.html" name="Left" scrolling="NO"  id="Left">

<frame src="MainRight.html" name="Right" scrolling="YES" id="Right">

</frameset>

</frameset>

<noframes><body>
</body>
</noframes>
</html>


Όπου στα δεξιά έχω την φόρμα εισαγωγής:
κώδικας:

<html>
<head>
<title>MainRight</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">


</head>
<body >
<table align=center border=0 cellpadding='0' cellspacing='0'>
<tr>
<td width=300 height=180 valign=top style="background-image:url(table_layout.jpg)" style="background-repeat : no-repeat;"> 
        <div align=center><b>Είσοδος</b></div><br>
        <form action="Eisodos.php" method="post">

        <div align="center"><small>Όνομα Χρήστη (username)</small><br>

        <input id="focus" style='width:150px; heigth:20px;' name="uname" size="20"><br>

        <small>Συνθηματικό (password)</small><br>
        <input style='width:150px; height:20px;' name="pass" type="password" size="20"><br>
        <input value="Είσοδος Φοιτητή" name="EFoititi" type="submit">
        <input value="Είσοδος Καθηγητή" name="EKathigiti" type="submit">
       
      
        </div>

        </form>

</td>
</tr>
</table>
<br>
<table cellpadding='4' cellspacing='0' width='100%' border=0>
<tr>
<td>

<fieldset>
<pre>Καλωσορίσατε στο E-Class!

Η πλατφόρμα E-Class αποτελεί ένα ολοκληρωμένο Σύστημα Διαχείρισης Ηλεκτρονικών
Μαθημάτων.Έχει σχεδιαστεί με προσανατολισμό την ενίσχυση της συμβατικής διδασκαλίας
αξιοποιώντας την ήδη σε υψηλό βαθμό αφομοιωμένη στο χώρο της εκπαίδευσης πληροφορική
τεχνολογία. Ακολουθεί τη φιλοσοφία του λογισμικού ανοικτού κώδικα και υποστηρίζει την
υπηρεσία Ασύγχρονης Τηλεκπαίδευσης χωρίς περιορισμούς και δεσμεύσεις. Η πρόσβαση στην
υπηρεσία γίνεται με τη χρήση ενός απλού φυλλομετρητή (web browser) χωρίς την απαίτηση
εξειδικευμένων τεχνικών γνώσεων.Στόχος είναι η ενίσχυση της εκπαιδευτικής διαδικασίας,
προσφέροντας στους συμμετέχοντες ένα δυναμικό περιβάλλον αλληλεπίδρασης και συνεχούς
επικοινωνίας εκπαιδευτή εκπαιδευόμενου.



</pre>
</fieldset>
<td>

</tr>

</table>
</body>

</html>


Έχω δημιουργήσει την Eisodos.php:
κώδικας:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Eisodos</title>
</head>

<body>

<?php

ini_set ('display_errors', 1);
error_reporting (E_ALL);

if (isset ($_POST['EFoititi'])){

   $link=mysql_connect('localhost', 'almark', '123456');
   @mysql_select_db("e-class");
   
   $uname = $_POST['uname'];
   $pass = $_POST['pass'];

   mysql_query('set character set greek',$link);
   mysql_query("SET NAMES 'utf8'",$link);
   
   if($uname!='' && $pass!=''){
      $sql="SELECT username, password FROM foitites WHERE username='$uname' AND password='$pass'";
      $result=mysql_query($sql);
      $rows=mysql_num_rows($result);


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

if (isset ($_POST['EKathigiti'])){

   $link=mysql_connect('localhost', 'almark', '123456');
   @mysql_select_db("e-class");
   
   $uname = $_POST['uname'];
   $pass = $_POST['pass'];

   mysql_query('set character set greek',$link);
   mysql_query("SET NAMES 'utf8'",$link);
   
   if($uname!='' && $pass!=''){
      $sql="SELECT username, password FROM kathigites WHERE username='$uname' AND password='$pass'";
      $result=mysql_query($sql);
      $rows=mysql_num_rows($result);


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


mysql_close();
?>

</body>
</html>


Αν πχ. κάνει login ένας φοιτητής έχω αυτό τον κώδικα:
κώδικας:

<?
session_start();
if(!isset($_SESSION['username'])){{
header("location:Eisodos.php");
}
?>

<html>
<head>
<title>Foitites</title>
</head>


<frameset rows="100,*" frameborder="0" framespacing="0" bordercolor="#FF0000">
<frame src="MainTop.html" name="Top" scrolling="no" id="Top">

<frameset rows="*" cols="250,*" framespacing="0" frameborder="no" border="0" bordercolor="#FF0000">
<frame src="FoititesLeft.php" name="Left" scrolling="YES"  id="Left">

<frame src="FoititesRight.html" name="Right" scrolling="YES" id="Right">

</frameset>

</frameset>

<noframes><body>
</body>
</noframes>
</html>


Αλλά μου βγάζει το εξής σφάλμα:
Warning: session_register(): Cannot send session cookie - headers already sent by (output started at f:\easyphp1-8\www\eisodos.php:11) in f:\easyphp1-8\www\eisodos.php on line 34

Warning: session_register(): Cannot send session cache limiter - headers already sent (output started at f:\easyphp1-8\www\eisodos.php:11) in f:\easyphp1-8\www\eisodos.php on line 34
Επιτυχής Login


Έχετε καμιά ιδέα μπας και ξεκολλήσω;
cordis
Administrator, [F|H]ounder, [C|S]EO

Μέλος από: 09 Οκτ 1999
Βοηθήματα: 95
Νέα: 476
Templates: 1
Scripts: 2
Μηνύματα: 256+

Περιοχή: Greece
View users profile Visit posters website
blog cv flickr picasa facebook linkedin 
twitter friendfeed deviantART del.icio.us 
ΜήνυμαΣτις: 17 Μαρ 2010 10:12    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

το session_register("authenticated"); θα πρέπει να το βάλεις στην αρχή και πριν στείλει οτιδήποτε άλλο στον browser η PHP. ούτε καν ένα κενό χαρακτήρα...

με την ίδιο τρόπο που έχεις βάλει και το session_start(); στο τελευταίο κομμάτι κώδικα.

_________________
Δεν απαντάω σε προσωπικά μηνύματα με ερωτήσεις που καλύπτονται από τις ενότητες του forum. Για ο,τι άλλο είμαι εδώ για εσάς.
- follow me @twitter

almark


Μέλος από: 17 Μαρ 2010
Μηνύματα: 4

View users profile
ΜήνυμαΣτις: 17 Μαρ 2010 10:48    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Thanks man...Τώρα τρέχει και απλά εκτυπώνει το μήνυμα. Θέλω όμως να το κάνω να σε στέλνει στην επόμενη σελίδα. Το δοκίμασα έτσι:

κώδικας:

if ($rows==1){
         $url = 'FoititesMain.php';
         header("Location: $url");
       exit();
         } else {
         echo "Ανεπιτυχές Login, δοκιμάστε πάλι";
         }


και έτσι:
κώδικας:

if ($rows==1){
         parent.location.href='FoititesMain.php';
         } else {
         echo "Ανεπιτυχές Login, δοκιμάστε πάλι";
         }


αλλά δεν τρέχει ούτε με το ένα ούτε με το άλλο...
Για να το στέλνεις σε μια σελίδα με το που κάνεις login πως το κάνεις;
Lefteris33


Μέλος από: 18 Μαρ 2010
Μηνύματα: 93
Περιοχή: Δαφνη
View users profile Visit posters website
ΜήνυμαΣτις: 18 Μαρ 2010 23:07    Θέμα: Re: Ένα απλό User Login σε PHP
Περιγραφή θέματος: Αδύνατη εκίννηση του session
Απάντηση με παράθεση  Mark this post and the followings unread

Είμαι νέος στην php, προσπαθώ να φτιάξω μία σωστή διαχείρηση προσβάσεων χρηστών, αλλα έχω μεγάλο πρόβλημα με τα COOKIES και τα Sessions.
Στην αρχή ακολούθησα παραδείγματα κώδικα απο κάποιο βιβλίο που διαβάζω και έπαιρνα σφάλματα για την setcookies(0).
Είδα το παράδειγμά σου στο register.php & login.php και άλλαξα τα script μου.
Παίρνω πάλι μυνήματα σφάλματος για τα session ενώ έχω ελένξει το php.ini, και στην αρχή του session εκχωρώ την session_start();
Το μύνημα που παίρνω είναι :

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\Inetpub\vhosts\mydomain.gr\httpdocs\login.php:1) in C:\Inetpub\vhosts\mydomain.gr\httpdocs\login.php on line 15

στο line 15 ειναι το session_start();
χωρίς την session_start(); παίρνω μυνήματα για την παρακάτω γραμμή:
16. session_register("authenticated");

Δηλαδή αντιμετοπίζω πρόβλημα είτε οταν προσπαθώ να καθορίσω COOKIES είτε όταν προσπαθώ για sessions.
Μπορείς να βοηθήσεις?
korgr
Honorary Member

Μέλος από: 07 Οκτ 2008
Βοηθήματα: 5
Scripts: 2
Μηνύματα: 256+

Περιοχή: Corinth
View users profile
portfolio skype 
ΜήνυμαΣτις: 19 Μαρ 2010 07:36    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Οταν η session_start() ειναι πραγματι πρωτη πρωτη εντολη χωρις να εχει προηγηθει κενος χαρακτηρας, τοτε 99% αυτο το μηνυμα λαθους εμφανιζεται λογω υπαρξης UTF-8 BOM Signature στο αρχειο σου.
Λυση: Σωζεις τα αρχεια σου με καποιο editor που να υποστηριζει Save Without BOM

_________________
Projects: www.topgr.gr | www.ktizo.gr | Odyssey CMS | Οικονομική διαχείριση εσόδων-εξόδων
Lefteris33


Μέλος από: 18 Μαρ 2010
Μηνύματα: 93
Περιοχή: Δαφνη
View users profile Visit posters website
ΜήνυμαΣτις: 19 Μαρ 2010 23:30    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Έχεις δίκιο. Μετέφερα τα script σε Notepad2, έσωσα UTF-8 without signature, ανέβασα στον server και παίζουν όλα τέλεια.
Διάβαζα για το πρόβλημα ΒΟΜ, αλλα υπέθετα οτι το πρόβλημα μου δεν μπορεί να είναι τόσο απλό και φταίει κάτι στο PHP.ini.
Ευχαριστώ.
almark


Μέλος από: 17 Μαρ 2010
Μηνύματα: 4

View users profile
ΜήνυμαΣτις: 20 Μαρ 2010 12:01    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

Παιδιά help...
Γράφω κώδικα για ένα site το οποίο και καλά θα είναι βοηθητικό σε φοιτητές ώστε να κάνουν τεστ σε διάφορα μαθήματα. Έχω κάνει την αρχική σελίδα και τις εσωτερικές αλλά έχω κολλήσει. Αφού βάλει ο χρήστης το username και το password του, πως θα τον στέλνω στην επόμενη σελίδα;

O κώδικας που έχω γράψει και δεν τρέχει είναι ο εξής:
κώδικας:

<?
session_register("authenticated");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Eisodos</title>
</head>

<body>

<?php

ini_set ('display_errors', 1);
error_reporting (E_ALL);

if (isset ($_POST['EFoititi'])){

   $link=mysql_connect('localhost', 'almark', '123456');
   @mysql_select_db("e-class");
   
   $uname = $_POST['uname'];
   $pass = $_POST['pass'];

   mysql_query('set character set greek',$link);
   mysql_query("SET NAMES 'utf8'",$link);
   
   if($uname!='' && $pass!=''){
      $sql="SELECT username, password FROM foitites WHERE username='$uname' AND password='$pass'";
      $result=mysql_query($sql);
      $rows=mysql_num_rows($result);


         if ($rows==1){
      parent.location.href='FoititesMain.php';
         } else {
         echo "Ανεπιτυχές Login, δοκιμάστε πάλι";
         }
   }     
}

if (isset ($_POST['EKathigiti'])){

   $link=mysql_connect('localhost', 'almark', '123456');
   @mysql_select_db("e-class");
   
   $uname = $_POST['uname'];
   $pass = $_POST['pass'];

   mysql_query('set character set greek',$link);
   mysql_query("SET NAMES 'utf8'",$link);
   
   if($uname!='' && $pass!=''){
      $sql="SELECT username, password FROM kathigites WHERE username='$uname' AND password='$pass'";
      $result=mysql_query($sql);
      $rows=mysql_num_rows($result);


         if ($rows==1){
          parent.location.href='KathigitesMain.php';
         } else {
         echo "Ανεπιτυχές Login, δοκιμάστε πάλι";
         }
   }     
}


mysql_close();
?>

</body>
</html>
Nikthebig


Μέλος από: 24 Απρ 2009
Μηνύματα: 16

View users profile
ΜήνυμαΣτις: 26 Μαρ 2010 20:42    Θέμα: Απάντηση με παράθεση  Mark this post and the followings unread

παιδιά εγώ έχω πρόβλημα με το logout.Δεν μου κάνει σωστό logout.
// login.php
<?php
session_start();
ini_set('session.gc_maxlifetime','60');
echo "<body bgcolor='#87CEEB'>";
include "conDB.inc";
$query="select * from user";
$result=mysql_query($query,$con);

$_SESSION['name']=$_POST["name"];
$_SESSION['pass']=$_POST["pass"];
$_SESSION["userlvl"]=3;

$name= $_POST["name"];
$pass= $_POST["pass"];

$login = false;
while($row= mysql_fetch_array($result)){
if (( $name == $row["Username"])&&( $pass == $row["Password"] )){
echo "Login!! <br>";
$login = 1;
$_SESSION["login"]=$login;

}

}

mysql_close($con);

if ($login){
include "userlvl.php";
}
else{
echo " Wrong Username or Password <br>";
echo "<a href='index.php'> Home Page </a>";
}


if($_SESSION["userlvl"]==1){
include "index.php";
}
else if($_SESSION["userlvl"]==2){
include "index.php";
}
else if($_SESSION["userlvl"]==3){

}

?>
-------------------------------------------------------
// logout.php
<?php
session_start();
function logout(){

echo "<html>";
echo "<title>Logging Out</title> ";
echo "<body bgcolor='#87CEEB'> ";

$login=$_SESSION["login"];
if(!$login){
echo "<h1>Error!</h1>\n";
echo "You are not currently logged in, logout failed. Back to <a href=\"index.php\">Home Page</a>";
}
else{
/* Kill session variables */
unset($_SESSION['name']);
unset($_SESSION['pass']);
$_SESSION = array(); // reset session array

session_destroy(); // destroy session.

echo "<h1>Logged Out</h1>\n";
echo "You have successfully <b>logged out</b>. Back to <a href=\"index.php\">Home Page</a>";

}
}
?>
--------------------------------------------------------
To session.gc_maxlifetime το έχω θέσει με 60.Δηλαδή αν κλείσω τον Browser μου μετά απο 1 λεπτο να κάνει μόνο του Logout.(με αυτό τον τρόπο δουλεύει ). Εαν όμως κάνω new tab και μετα κλείσω τον Browser μου και τον ξανα-ανοιξω με έχει ακόμα σε κατάσταση Login
Εμφάνιση Μηνυμάτων:   
Εισαγωγή νέου Θέματος   Απάντηση στο Θέμα Σελίδα 15 από 16 [240 Μηνύματα] Σελίδα:  Προηγούμενο  1, 2, 3, ..., 13, 14, 15, 16 Επόμενο
Mark the topic unread :: Προηγούμενο θέμα :: Επόμενο θέμα
 Forum index » Δημιουργία Web Sites, Γραφικών & Προγραμματισμός » PHP Προγραμματισμός και εφαρμογές » PHP τα δικά μας scripts
Τώρα είναι 07 Δεκ 2016 22:12 | All times are UTC + 2


Email This Page to Someone! add to Favorites

     Powered by p h p B B © 2001,2005 p h p B B Group
Για άμεση επικοινωνία με τον διαχειριστή του freestuff.gr στο email: freestuff.gr(παπάκι)gmail.com


Copyright © 1999-2013 Freestuff.gr All Rights Reserved  
Version Aegean, designed by N. Tsaganos