Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Rejestracja i logowanie
Forum PHP.pl > Forum > Przedszkole
Croos22
Dzień dobry.

Znalazłem ciekawy skrypt rejestracji i logowanie na tejstronie.
Niestety wyskoczył mi błąd takiej treści:
Cytat
Parse error: syntax error, unexpected T_STRING in /home/tracer2424/domains/samisobie.unl.pl/public_html/reglog.php on line 6


Błąd za pewnie jest wynikiem złego umieszczenia kodu przeze mnie.
Zrobiłem to tak:
Baza(utworzyła się tabela o nazwie users więc ten kod pewnie jest dobry):
Kod
CREATE TABLE IF NOT EXISTS `users` ( `uid` int(11) NOT NULL auto_increment, `imnaz` text NOT NULL, `email` text NOT NULL, `haslo` text NOT NULL, `telefon` text NOT NULL, `dodano` bigint(20) NOT NULL, `szyfr` int(11) NOT NULL, `status` int(1) NOT NULL, PRIMARY KEY (`uid`) ) ENGINE=MyISAM DEFAULT CHARSET=latin2 AUTO_INCREMENT=1;

Następnie plik ink/funkcje.inc.php
Kod
    //———konfigurujemy dane
    $dbuser=”nazwa usera mysql”;
    $dbbase=”nazwa bazy mysql”;
    $dbpass=”hasło do bazy mysql”;
    $dbserv=”adres serwera”;
    $domena=”jakasdomena.pl”;
    //———-połączenie z bazą mysql
    $dbh=mysql_connect ($dbserv, $dbuser, $dbpass) or die (‘I cannot connect to the database because: ‘ . mysql_error());
    mysql_select_db ($dbbase);
    //———- zakoduj
    function zakoduj($var){
    $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
    $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
    $key = konf(‘keycode’);
    $crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $var, MCRYPT_MODE_ECB, $iv);
    return base64_encode($crypttext);
    }
    //———- dekoduj
    function dekoduj($var){
    $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
    $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
    $key = konf(‘keycode’);
    $var=base64_decode($var);
    $crypttext = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $var, MCRYPT_MODE_ECB, $iv);
    return trim($crypttext);
    }

    //———- kontrola dostepu do panelu
    function kontrola(){
    $akces=strip_tags($_COOKIE[akces]);
    if(!empty($akces)){
    setcookie(“akces”, $akces, time()+900, “/”, “.”.$domena);
    }
    //———- wyciagam uid
    function uid(){
    $akces=strip_tags($_COOKIE[akces]);
    $akces=dekoduj($akces);
    $ex=explode(“|||”,$akces);
    $uid=$ex[0];
    return trim($uid);
    }
    if($akces==null){
    $er=1;
    }
    $akces=dekoduj($akces);
    $ex=explode(“|||”,$akces);
    $uid=$ex[0];
    $pass=$ex[1];
    $szyfr=$ex[2];
    if($uid!=null and $pass !=null and $szyfr!=null){
    $n1=mysql_query(“SELECT uid FROM users WHERE uid = ‘$uid’ AND haslo = ‘$pass’ AND szyfr=’$szyfr’ AND status = 1″);
    if(mysql_num_rows($n1)!=1){
    $er=1;
    }
    }else{
    $er=1;
    }
    if($er!=null){
    //miejsce gdzie zostanie przeniesiony jesli nie jest zautoryzowany do ogladania
    header(‘LOCATION: http://www.’.$domena);
    exit;
    }
    }

reglog.php
Kod
    <?
    include(‘ink/funkcje.inc.php’);
    //—- logowanie
    if($_POST[logowanie]==1 AND $_POST[log_email]!=null AND $_POST[log_haslo]!=null){
    //sprawdzam czy jest w bazie
    $n1=@mysql_query(“SELECT uid,status,haslo,szyfr FROM users WHERE email=’”.cln($_POST[log_email]).”‘ AND haslo = ‘”.md5(cln($_POST[log_haslo])).”‘ LIMIT 1”);
    $n2=@mysql_fetch_array($n1);
    $status=$n2[status];
    if($status==1){
    $uid=$n2[uid];
    $pass=$n2[haslo];
    $szyfr=$n2[szyfr];
    $akces=zakoduj(“$uid|||$pass|||$szyfr”);
    setcookie(“akces”, $akces, time()+900, “/”, “.”.$domena);
    header(“LOCATION:  $domena/panel/”);
    exit;// KONIEC LOGOWANIA
    }else{
    $_COOKIE[akces]=”;
    $nfo=’Brak dostÄ?pu do konta z przyczyny braku aktywacji lub blokady administratora.’;
    }
    }
    //—- aktywacja
    if($_REQUEST[aktywacja]==1){
    $szyfr=cln($_REQUEST[szyfr]);
    $md5=cln($_REQUEST[md5]);
    //szukam czy jest
    $n1=@mysql_query(“SELECT email FROM users WHERE szyfr=’$szyfr’ and haslo = ‘$md5' and status = 0”);
    if(@mysql_num_rows($n1)==1){
    $n2=mysql_fetch_array($n1);
    $nowy=mt_rand(10000,99999);
    mysql_query(“UPDATE users SET status = 0 WHERE email = ‘$n2[email]‘”);
    mysql_query(“UPDATE users SET status = 1 WHERE email = ‘$n2[email]‘ AND haslo = ‘$md5' AND szyfr = ‘$szyfr’ LIMIT 1”);
    mysql_query(“UPDATE users SET szyfr = ‘$nowy’ WHERE email = ‘$n2[email]‘ AND haslo = ‘$md5' and szyfr=’$szyfr’”);
    $nfo=’Konto zostaĹ?o aktywowane. MoĹźesz siÄ? zalogowaÄ?.’;
    }else{
    $nfo=’JuĹź raz dokonaĹ?eĹ? aktywacji tym linkiem.’;
    }
    }
    //—- rejestracja
    //spradzam czy sÄ? dane
    if($_POST[email]!=null and $_POST[imnaz]!=null and $_POST[pass1]!=null and $_POST[pass2]!=null and $_POST[rejestracja]==1){
    //spradzam czy zaakceptowal regulamin
    if($_POST[akceptuje]!=1){
    $er=1;
    $nfo.=”Aby siÄ? zarejestrowaÄ? musisz zaakceptowaÄ? regulamin!”;
    }
    //sprawdzam czy email jest juz w bazie
    $n1=mysql_query(“SELECT uid FROM users WHERE email = ‘”.cln($_POST[email]).”‘ AND status = 1”);
    if(mysql_num_rows($n1)!=0){
    $er=1;
    $nfo.=”Podany email jest juĹź w bazie. SprĂłbuj odzyskaÄ? hasĹ?o jeĹ?li je zagubiĹ?eĹ?!”;
    }
    //sprawdzam czy hasla sie zgadzaja
    if($_POST[pass1]!=$_POST[pass2]){
    $er=1;
    $nfo.=”HasĹ?o i jego powtĂłrka nie sÄ? identyczne!”;
    }
    //jeĹ?li nie ma bĹ?Ä?du rejestruje
    if($er==null){
    $num=mt_rand(5000,100000);
    $czas=time();
    mysql_query(“INSERT INTO users VALUES (NULL,’”.cln($_POST[imnaz]).”‘,’”.cln($_POST[email]).”‘,’”.md5(cln($_POST[pass1])).”‘,”,’$czas’,'$num’,0)”)or die(mysql_error());
    require(‘regmail.inc.php’);
    mail(cln($_POST[email]),”Aktywacja konta w”.$domena,$wiadomosc,2);
    $nfo=”Gratulacje! konto zostaĹ?o zaĹ?oĹźone. SprawdĹş teraz swĂłj email i aktywuj dostÄ?p.”;
    }
    }
    ?>

<head>

</head>
<body>
<?if($nfo){echo “<script>alert(‘$nfo’);</script>”;}?>


    <form id=”form” action=”reglog/” enctype=”multipart/form-data” name=”form2” method=”post” style=”margin-left:16px”><input type=”hidden” name=”rejestracja” value=”1”>
    ImiÄ? i nazwisko:
    <input type=”text” name=”imnaz” value=”<?=strip_tags(trim($_POST[imnaz]))?>” />
    <br />
    <br>
    Adres email:
    <input type=”text” name=”email” value=”<?=strip_tags(trim($_POST[email]))?>” />
    <br />
    <br>
    HasĹ?o dostÄ?pu:
    <input type=”password” name=”pass1” />
    <br />
    <br>
    PowtĂłrz hasĹ?o:
    <input type=”password” name=”pass2” />
    <br />
    <br>
    AkceptujÄ? <a target=”_blank” href=”reglog/”>regulamin</a> i
    <a target=”_blank” href=”polityka-prywatnosci/”>politykÄ? prywatnoĹ?ci</a> serwisu<br>
    <input name=”akceptuje” type=”checkbox” style=”width: 20px; height: 23px” value=”1”>Tak<br>
    &nbsp;&nbsp;&nbsp;
    <strong style=”float:left;”>
    <input type=”submit” name=”rej” value=”zarejestruj mnie” style=”width: 132px; height: 27px”></strong>
    </form>

Dalej wstawiamy formularz logowania:

    <form id=”form” action=”reglog/” enctype=”multipart/form-data” name=”formlog” method=”post”><input type=”hidden” name=”logowanie” value=”1”>
    Adres email:
    <input type=”text” name=”log_email” value=”<?=cln($_POST[log_email])?>” />
    <br />
    HasĹ?o:
    <input type=”password” name=”log_haslo”  />
    <br />
    &nbsp;&nbsp;&nbsp;
    <strong style=”float:right;”>
    <input type=”submit” name=”log1” value=”zaloguj mnie” style=”width: 103px; height: 24px; float:right;margin-top:-10px;margin-right:-6px”></strong><strong style=”float:left” style=”margin-right:20px”><a href=”java script:void(null);” onclick=”document.getElementById(‘form’).submit()”>
    <span class=”style2” style=”text-decoration:none;font-weight:normal”>Nie pamiÄ?tam hasĹ?a</span></a></strong>
    </form>
</body>


.htaccess
Kod
RewriteEngine On

    RewriteRule ^reglog/$ reglog.php [L]
    RewriteRule ^aktywacja/([0-9]+)/([0-9a-z]+)/$ reglog.php?szyfr=$1&md5=$2&aktywacja=1 [L]

regmail.inc.php
Kod
    <?
    $wiadomosc=”Gratulacje!
    Twoje konto zostało poprawnie założone. Pełny dostęp wymaga jednak aktywacji.
    Kliknij w poniższy link celem potwierdzenia rejestracji.
    http://www.$domena/aktywacja/$num/”.md5(cln($_POST[pass1])).”/
    Dziękuję za rejestrację,
    Administrator $domena”;
    ?>

Tak to wygląda.Proszę o pomoc.Z góry dziękuje i pozdrawiam.
piotrooo89
1. forum to nie paser
2. należy używać odpowiedniego bbcode
3. zamykam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.