maszk Posted September 1, 2007 Posted September 1, 2007 Csináltam egy PHP oldalt és szeretném használni a regisztrációs rendszert! Sajnos én nem tudom hogyan kell használni, ezért jól jönne a ti segítségetek!!!
HK Posted September 1, 2007 Posted September 1, 2007 Milyen regisztrációs rendszert? Nem valami PHP Nuke szerű rendszert állítottál üzembe? Ha meg te írtad az oldalt, neked kell a reg.rendszert is megcsinálni.
maszk Posted September 1, 2007 Author Posted September 1, 2007 Regisztráció és utána jelszavas belépés! Én csak a segítségeteket akartam kérni! Bocsi. ír: Így világosabb?
Kiskalóz Posted September 1, 2007 Posted September 1, 2007 Te írtad a php kódokat? Vagy letöltötted valahonnan? (Tudsz php-t programozni?)
HK Posted September 1, 2007 Posted September 1, 2007 Ha tudsz PHP-ül, akkor csinálsz egy form-ot, amiben bekéred a regelő user felhasználónevét, jelszavát, majd lecsekkolod, hogy van-e már olyan username, ha nincs berakod egy mysql-táblába, a jelszó kódolása szerintem md5()-el elegendő. (az md5 hasht tárolod el a jelszó mezőben, és ellenőrzéskor is azzal hasonlítod össze) Belépés szintén egy formmal történik, a submit-ban összehasonlítod a username-t és a jelszót az adatbázisban lévővel, majd ha minden OK, beengeded a jelszóval védett részbe.
Titto Posted February 2, 2008 Posted February 2, 2008 Sziasztok! Egy PHP-s oldalba szeretnék beépíteni egy regisztráló rendszert csak az a gond hogy a tudásom 0 a Php-hoz, tehát nem tudom én magam megírni. Nincs ehhez valami program amivel könnyen és egyszerűen meg lehetne oldani? Előre is köszönöm.
Garono Posted February 2, 2008 Posted February 2, 2008 Khm: Nagyon szépen megkérek minden érdeklõdõt, hogy nulla PHP tudással ne tegyen fel kérdéseket! Egyébként használj valamilyen CMS rendszert (pl. phpNuke, Joomla, Drupal, stb.).
Dani991 Posted June 15, 2008 Posted June 15, 2008 Sziasztok! Elkezdtem PHP-vel foglalkozni, egy ideig minden jól ment, de aztán problémába ütköztem. <?php $user = "user"; $password = "password"; $database = "database"; $host = "host"; $connecting = @mysql_connect ( $host, $user, $password ) or die ( `$sor7` . `<a href=\"registration.php\">$sor9</a>` ); @mysql_select_db ( $database ) or die ( "$sor7" . "<a href=\"registration.php\">$sor9</a>" ); $email4 = mysql_query( "SELECT * FROM registration WHERE email5 = '$email2'"); $rows = mysql_num_rows( $email4 ); $name2 = $_POST['name']; $country2 = $_POST['country']; $city2 = $_POST['city']; $command = "INSERT INTO registration ( email5, pass, name, country, city ) VALUES ( `$email2`, `$pass2`, `$name2`, `$country2`, `$city2` )"; if ( $rows == false ){ print "$sor8"; mysql_query($command, $connecting); } else { print "$sor10" . "<a href=\"registration.php\">$sor9</a>"; } mysql_close( $connecting ); ?> Csináltam egy regisztrációs ûrlapot, és azt szeretném, ha a felhasználó által beírt adatokat elküldené az adatbázisba. A hiba a fenti kódrészletben van, a mysql_query() résznél. Többféle leírást olvastam már, van, aki szerint kell utána pontosvesszõ, van, aki szerint nem kell. Ha teszek pontosvesszõt, akkor ezt a hibaüzenetet kapom: mysql_query(): MySQL error: Unknown column 'xy@xy.com' in 'field list' Az xy@xy.com helyére azt írja, amit a felhasználó beír az e-mail mezõbe. Nem értem, miért írja ezt, mert az adatbázisban csináltam egy email5 nevû oszlopot és elvileg az xy@xy.com ennek az oszlopnak az értéke lenne, nem pedig egy másik oszlop. Ha nem teszek pontosvesszõt, akkor ezt írja: Parse error: syntax error, unexpected '}' Az aposztrófok közé mindig azt írja, ami a mysql_query() után jön.
Kiskalóz Posted June 15, 2008 Posted June 15, 2008 Korábban van a lekérdezés mint ahogy felviszed az adatokat. Gondolom ellenõrizni akarod hogy létezik-e már az az email cím. Akkor viszont 1 if-el tudod megoldani. pl: if(isset($_POST['email'])){ $email=trim($_POST['email']); $ell=dbQuery("Select * from reg where email='".$email."' "); if(mysql_num_rows($ell) <= 0){ dbQuery("Insert Into reg(email, datum)" ."Values('".$email."', '".time()."' )"); $value="Sikeres felvitel!"; echo"<script language=\"JavaScript\">alert('A(z) $email címet eltároltuk! Köszönjük!');</SCRIPT>"; }else { echo"<script language=\"JavaScript\">alert('Már létezik az email cím az adatbázisban!'); </SCRIPT>"; } }
Dani991 Posted June 15, 2008 Posted June 15, 2008 Köszi a segítséget! A problémát félig-meddig sikerült megoldani. Már nem ír ki semmilyen hibaüzenetet, de nem is hoz létre sorokat az adatbázisban. A forráskód most így néz ki: <?php $user = "user"; $password = "password"; $database = "database"; $host = "host"; $connecting = "@mysql_connect ( $host, $user, $password ) @mysql_select_db ( $database )"; $email4 = @mysql_query( "SELECT * FROM registration WHERE email5 = '$email2'"); $rows = @mysql_num_rows( $email4 ); $name2 = $_POST['name']; $country2 = $_POST['country']; $city2 = $_POST['city']; $command = "INSERT INTO registration ( email5, pass, name, country, city ) VALUES ( `$email2`, `$pass2`, `$name2`, `$country2`, `$city2` )"; @mysql_connect ( $host, $user, $password ); @mysql_select_db ( $database ); if ( $rows == 0 ){ print "$sor8"; @mysql_query($command, $connecting); } else { print "$sor10" . "<a href=\"registration.php\">$sor9</a>"; } @mysql_close( $connecting ); ?> A vége felé, a mysql_query() mellett van egy olyan rész, hogy print "$sor8";. Na, a $sor8 változó értékét ki is írja rendesen, de mégsem hozza létre a sort az adatbázisban, pedig az if-es részben egymás mellett van a két parancs.
Dani991 Posted June 15, 2008 Posted June 15, 2008 Eredetileg simonfemprof.extra.sql, csak az egyszerűség kedvéért itt a fórumon átírtam. Egyébként meg, ha nem lenne jó, akkor szerintem már hibaüzenettel bombázna, de amint írtam, egy deka hibaüzenetet nem ír és ezért nem értem, hogy akkor miért nem hozza létre a sorokat.
Kiskalóz Posted June 15, 2008 Posted June 15, 2008 Akkor már csak 1 ötletem van. Nézd meg, hogy létezik-e minden adat amit fel akarsz vinni. A felvitel helyett csinálj 1 print-et.
h.arpad Posted June 15, 2008 Posted June 15, 2008 Meg kéne próbálni kamu adatokkal phpMyAdmin-ban lefuttatni az SQL-kérést ($command). Ha ott létrehozza a sort, akkor kezdj el csak a kódban kutakodni.
Dani991 Posted June 15, 2008 Posted June 15, 2008 Így sem hozta létre a sort. Ezt a hibaüzenetet írja: Hiba SQL-kérés: INSERT INTO registration( email5, pass, name, country, city ) VALUES ( `e-mail cím` , `jelszó` , `név` , `ország` , `város` ) MySQL jelzi: #1054 - Unknown column 'e-mail cÃm' in 'field list'
Kiskalóz Posted June 16, 2008 Posted June 16, 2008 Valami adat nem létezik. Vagy az adatbázisban a tábla, vagy a sor.. de tuti valami ilyen hiba van.
molnid Posted June 16, 2008 Posted June 16, 2008 Szia! Van ez a 3 jel: ', ", ` Te az értékeknél a 3.-at használod, ami szerintem nem jó. Azt az adatbázis az objektumok neveire használja. (adatbázis, tábla, mező). Lehet, hogy félrenéztem, vagy félreértettem.
Dani991 Posted June 16, 2008 Posted June 16, 2008 @Kiskalóz: A táblát létrehoztam és az oszlopokat is. @molnid: Az általad leírt 3 jel közül az elsőnél és a harmadiknál nem ír hibaüzenetet. Ha a másodikat használom, az nem jó, mert összeakad azzal, ami az INSERT INTO... elött van. Ha pedig ez utóbbit cserélem ki, akkor ezt a hibaüzenetet kapom: shell_exec() has been disabled for security reasons Szerk.: phpMyAdmin-ban megint lefuttattam a kérést, csak most kicseréltem a ` jeleket ' jelekre. Így létrehozta a sort a táblában. Ki is cseréltem ezeket a jeleket a php kódban is, de így továbbra sem hoz létre sorokat.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now