MafiaBoy 0 Share Posted October 25, 2008 Egy login rendszert szeretnék létrehozni, ahol én adom meg a felhasználó neveket és jelszavakat, és egy belinkelt honlapra dobjon be, ha helyes az user és a pass, de úgy hogy, minden felhasználónak saját oldala legyen, amit szintén én adok meg a kódban. A logint,kódot meg a site-ot, MySql-be mentse. olyan van nekem ami php file-ba menti el a kódot stb. de az ugy nem jó. config.php <?php $users=array ( array ( "username"=>"user1", "pass"=>"pass1", "site"=>"http://www.realuh.info" ), array ( "username"=>"user2", "pass"=>"pass2", "site"=>"http://www.startlap.hu" ) ); ?> login.html <form name="form1" method="get" action="login.php"> <p>Felhasználónév: <input name="username" type="text" id="userinput"> <br> <br> Jelszó: <input name="userpass" type="password" id="passinput"> <br> <br> <input type="submit" name="Submit" value="Bejelentkezés"> <input type="reset" name="Reset" value="Törlés"> </p> </form> Kb. ez ennyi lenne, de jó lenne egy olyan amo MySql-be ment. Kérlek segítsetek. Elõre is köszi. Link to comment Share on other sites More sharing options...
Kiskalóz 0 Share Posted October 25, 2008 SQL-ben tárold el a szükséges adatokat. ami feltétlen kell: - username - password - site A login részét gondolom meg tudod írni. Ekkor már egyszerû. <?php if(isset($_SESSION['akarmi'])){ include("'".$_SESSION['akarmi']['site']."'.php"); } ?> Link to comment Share on other sites More sharing options...
MafiaBoy 0 Author Share Posted October 26, 2008 Mivel nem vagyok jó php-ben, megkérhetnélek arra, hogy megcsinálod légy szíves? Kb. olyan alakban, mint ott nekem van, hogy már lehessen használni. Előre is nagyon köszi. Link to comment Share on other sites More sharing options...
Kiskalóz 0 Share Posted October 26, 2008 Az hogy nem vagy jó php-ben az mit jelent? Egy print "Hello world!" a max tudás? Mert akkor kár nekikezdeni. Megírva nekem megvan sok ilyen. De hiába küldöm át, azt úgyis egyénileg be kell állítani. Gondolom az sem menne. Link to comment Share on other sites More sharing options...
MafiaBoy 0 Author Share Posted October 30, 2008 1. Helló. megcsináltam az adatbázist, tartalmazza a "Username", "pass" meg "site" -ot. A login részét, légy szíves megírnád nekem, hogy az adatbázisból olvassa ki őket. Köszi előre is. 2. Egy másik variáns: Nem muszáj az elsőt, szóval a login részt, mert van nekem egy valamilyen loginos. Elég lenne csak a Regisztrációs rész, amelyik az adatbázisba ment (mysql-be). Egy olyan, amiben a honlap egy alap mindenkinek, aki beregisztrál. Köszi előre is. (Inkább jobb lenne ez. ) <?php echo "<h2>" . $area_settings[$iIndex[0]-1][0] . "</h2>\n"; echo "<div id=\"imLockTxt\">" . $area_settings[$iIndex[0]-1][1] . "<br />\n"; ?> <form id="imLockForm" action="imlogin.php" method="post"> <?php if($session_error == true) echo "<span id=\"imLockAlert\">" . $local_string[4] . "</span><br />"; ?> <span class="imLockLabel"><?php echo $local_string[0]; ?></span><input class="imLockFld" type="text" name="user" /><br /> <span class="imLockLabel"><?php echo $local_string[1]; ?></span><input class="imLockFld" type="password" name="psw" /><br /> <input class="imLockBtn" type="submit" name="Submit" value="<?php echo $local_string[2]; ?>" /> <?php if ($area_settings[$iIndex[0]-1][2] != "") echo " <input class=\"imLockBtn\" type=\"button\" value=\"" . $local_string[3] . "\" onclick=\"window.location='" . $area_settings[$iIndex[0]-1][2] . "'\" />\n"; ?> <------- ez login résznek jó ??? csak az a kérdés, hogy hogy nyissa meg a más-más oldalakat.<---(meg szerintem ehez kell egy olyan ami a honlapra hivatkozik) Link to comment Share on other sites More sharing options...
Kiskalóz 0 Share Posted October 30, 2008 Ám legyen... Ami az adatbázisba írja az adatokat: include("conf.php"); $sql=dbQuery("INSERT INTO tabla (username, password, site)" ."Values( '".db_up($felhasznalonev)."', '".db_up($jelszo)."', '".db_up($site)."' )"); Link to comment Share on other sites More sharing options...
MafiaBoy 0 Author Share Posted October 31, 2008 Köszi szépen a segitséget Link to comment Share on other sites More sharing options...
tjoco1 0 Share Posted December 18, 2008 Üdv mindenkinek! Felhasználó bevitelét szeretném megoldani adatbázisba rögzítéssel. Az adatbázis elkészült. A tábla neve: felhasznalo. A mezők: azonosito, felhasznalonev, vezeteknev, keresztnev, email, jelszo, datum. Egy html/php/mysql tanfolyamon kaptam arra példát, hogyan lehet űrlapból adatbázisba rögzíteni. Ezt használtam fel. A problémám: nem tudom hogyan kell megoldani, azt, hogy a rendszer ne engedjen két ugyanolyan felhasznalonevű egyént bevinni az adatbázisba. Kerestem erre is megoldásokat, az egyiket be is illesztettem, de továbbra is bevihetek két ugyanolyan felhasználó nevű tagot. Ha minden igaz pirossal jelöltem az általam talált ellenőrzésre hivatott részt. Nem tudom mi a probléma. Előre is köszönöm a segítséget! <?php // űrlapról kapott adat rendben van-e if ($felhasznalonev == "" or $vezeteknev == "" or $keresztnev == "" or $jelszo == "" or $email == "") print "<a href=felhasznalobevitel.html>Töltsd ki rendesen!</a>"; else { // adatok letárolása mysql táblába include("sql_proba.php"); //----------------- kiemelve ------------------------ $query = "SELECT felhasznalonev FROM felhasznalo WHERE felhasznalonev='$felhasznalonev'"; $result = mysql_query($query); if (mysql_num_rows($result)!=0) {$uzenet .= "<font color=red>A '$felhasznalonev' név már foglalt, kérjük válaszz másikat!</font></br>"; $hiba = true; } //----------------- kiemelve eddig ------------------ // aktuális dátum összeállítása megfelelő formátumban $datum = date ("Y-m-d H:i:s", time() ); // a felhasználó adatainak letárolására kérjük a mysql-t $keres = "INSERT INTO felhasznalo (felhasznalonev, vezeteknev, keresztnev, jelszo, email, datum) VALUES ('$felhasznalonev', '$vezeteknev', '$keresztnev', '$jelszo', '$email', '$datum')"; mysql_query($keres, $connect) or die ("hibás kérés: $keres"); echo "Az űrlap tartalma rögzítésre került! Köszönjük"; } ?> Ne írj pirossal! (l. Fórumszabályzat) >h.arpad Link to comment Share on other sites More sharing options...
Tasi 0 Share Posted December 18, 2008 Az a baj, hogy Te mindenképpen berakod a felhasználónevet az adatbázisba, ha van egyezés ha nincs. Megvizsgálod, hogy van-e egyezés, ha van kiirsz valamit, azután berakod az adatbázisba if (mysql_num_rows($result)!=0) // egyezik, nem rakom be else // nemegyezik, berakom Link to comment Share on other sites More sharing options...
tjoco1 0 Share Posted December 18, 2008 Tehát úgy érted, hogy a dátum összeállításától kezdõdõ részt tegyem az else ágba? if (mysql_num_rows($result)!=0) {$uzenet .= "<font color=red>A '$felhasznalonev' név már foglalt, kérjük válaszz másikat!</font></br>"; $hiba = true; } else { // aktuális dátum összeállítása megfelelõ formátumban $datum = date ("Y-m-d H:i:s", time() ); // a felhasználó adatainak letárolására kérjük a mysql-t $keres = "INSERT INTO felhasznalo (felhasznalonev, vezeteknev, keresztnev, jelszo, email, datum) VALUES ('$felhasznalonev', '$vezeteknev', '$keresztnev', '$jelszo', '$email', '$datum')"; mysql_query($keres, $connect) or die ("hibás kérés: $keres"); echo "Az ûrlap tartalma rögzítésre került! Köszönjük"; } } Így? Ne írj pirossal! (l. Fórumszabályzat) >h.arpad Link to comment Share on other sites More sharing options...
Tasi 0 Share Posted December 18, 2008 Igen, úgy. Link to comment Share on other sites More sharing options...
tjoco1 0 Share Posted December 18, 2008 Ebben az esetben az történik, hogy az ûrlap mehet gombjának lenyomására betöltõdik ugyan a felhasznalobevitel.php fájl a böngészõbe, de az égegyvilágon nem történik semmi. Maga az oldal üres, és az adatbázisba sem kerül be semmi. Link to comment Share on other sites More sharing options...
Tasi 0 Share Posted December 18, 2008 Hibát nem kaptál? Az elözõ üzenetedben van egy felesleges ' } ' az else után. Link to comment Share on other sites More sharing options...
tjoco1 0 Share Posted December 18, 2008 Sajna semmilyen hibaüzenet nem jön. A ' } ' még a teljes kód legelsõ nyitójának a zárója, csak a részletben nem látszódott, a szerkesztõben mutatja is a párokat. Link to comment Share on other sites More sharing options...
Kiskalóz 0 Share Posted December 18, 2008 Szerintem tedd ide be a feldolgozó kódot. Ilyen részletekbõl nehéz megmondani a hibát. Link to comment Share on other sites More sharing options...
tjoco1 0 Share Posted December 18, 2008 Rendben! Íme: <?php // űrlapról kapott adat rendben van-e if ($felhasznalonev == "" or $vezeteknev == "" or $keresztnev == "" or $jelszo == "" or $email == "") print "<a href=felhasznalobevitel.html>Töltsd ki rendesen!</a>"; else { // adatok letárolása mysql táblába include("sql_proba.php"); $query = "SELECT felhasznalonev FROM felhasznalo WHERE felhasznalonev='$felhasznalonev'"; $result = mysql_query($query); if (mysql_num_rows($result)!=0) {$uzenet .= "<font color=red>A '$felhasznalonev' név már foglalt, kérjük válaszz másikat!</font></br>"; $hiba = true; } else { // aktuális dátum összeállítása megfelelő formátumban $datum = date ("Y-m-d H:i:s", time() ); // a felhasználó adatainak letárolására kérjük a mysql-t $keres = "INSERT INTO felhasznalo (felhasznalonev, vezeteknev, keresztnev, jelszo, email, datum) VALUES ('$felhasznalonev', '$vezeteknev', '$keresztnev', '$jelszo', '$email', '$datum')"; mysql_query($keres, $connect) or die ("hibás kérés: $keres"); echo "Az űrlap tartalma rögzítésre került! Köszönjük"; } } ?> Légy szíves, használd a jelölőt a szerkesztőben, azért van. Ő az: >h.arpad Link to comment Share on other sites More sharing options...
Kiskalóz 0 Share Posted December 18, 2008 if ($felhasznalonev == "" or $vezeteknev == "" or $keresztnev == "" or $jelszo == "" or $email == "") Ezeket a változókat hol hozod létre? Mert az 1 dolog hogy a form elküldi az adatokat, de azt nem változóban küldi. Link to comment Share on other sites More sharing options...
tjoco1 0 Share Posted December 18, 2008 Hát, ahogy én értelmezem és látom, az van pedig amit mondasz: a form által elküldött adatok ezek, az ûrlap egyes mezõinek neve alapján. Csak a formos html állomány és az imént mutatott php állomány létezik egyelõre. A form: <form action="felhasznalobevitel.php" method=post> Felhasználó név: <input name=felhasznalonev type=text size=80 maxlength=80><br> Vezetéknév: <input name=vezeteknev type=text size=80 maxlength=80><br> Keresztnév: <input name=keresztnev type=text size=80 maxlength=80><br> Jelszó: <input name=jelszo type=password size=80 maxlength=80><br> E-mail: <input name=email type=text size=80 maxlength=80><br> <input name=gomb type=submit value='Mehet'> </form> Külön definiálnom kéne az említett változókat? Link to comment Share on other sites More sharing options...
Kiskalóz 0 Share Posted December 18, 2008 Igen! Pl $felhasznalonev=trim($_POST['felhasznalonev']); $jelszo=trim($_POST['jelszo']); stb stb Link to comment Share on other sites More sharing options...
tjoco1 0 Share Posted December 18, 2008 Köszi! Kipróbáltam. A kódsor elején még az adatellenõrzés elõtt definiáltam az általad megadott módszer szerint minden változót. <?php $felhasznalonev=trim($_POST['felhasznalonev']); $vezeteknev=trim($_POST['vezeteknev']); $keresztnev=trim($_POST['keresztnev']); $jelszo=trim($_POST['jelszo']); $email=trim($_POST['email']); // ûrlapról kapott adat rendben van-e if ($felhasznalonev == "" or $vezeteknev == "" or $keresztnev == "" or $jelszo == "" or $email == "") print "<a href=felhasznalobevitel.html>Töltsd ki rendesen!</a>"; else stb. Most annyi van, hogy ha már regisztált felhasználónévvel írok be, akkor nem rögzít az adatbázisba, a felhasznalobevitel.php képernyõ megint tök üres és hibaüzenet sincs. Viszont, ha még nem regisztrált felhasználónévvel írok be valakit, azt engedi rögzíteni az adatbázisba. Úgy tûnik már csak a visszakapcsolást kéne megoldani, hogy jelezze a rendszer, ha az illetõ már foglalt felhasználónévvel akar regisztrálni. Link to comment Share on other sites More sharing options...
tjoco1 0 Share Posted December 18, 2008 Megvan, megvan! Köszönöm szépen! if (mysql_num_rows($result)!=0) { print "A $felhasznalonev felhasználónév már foglalt, kérjük, válassz másikat!"; $hiba = true; } A printtel egész egyszerûen meg lehet oldani! Nem tudom, hogy helyes-e, szabályos-e, de mûködik! Köszönöm a segítségeteket!!! Link to comment Share on other sites More sharing options...
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