Tudnátok segíteni a szerveroldali részben?
Van egy registration.html
<!DOCTYPE html>
<html lang="hu" >
<head>
<meta charset="UTF-8">
<title>Regisztráció</title>
<link rel=”stylesheet” href=”registration.css”>
</head>
<body>
<form action="" method="post" accept-charset="UTF-8" >
Valódi név:<input type="text" name="name"><br>
Email:<input type="email" name="email"><br>
Email mégegyszer:<input type="email" name="email2"><br>
Felhasználónév:<input type="text" name="username"><br>
Jelszó:<input type="password" name="password"><br>
Jelszó mégegyszer:<input type="password" name="password2"><br>
<input type="reset" name="reset" value="Újra kitöltés">
<input type="submit" value="Regisztráció">
</form>
</body>
</html>
És ehhez kellene nekem egy, egyfajta valid php, hozzáírva ami leellenörzi a regisztráció helyességét és ha helyes akkor pedig behívná a config.php (adatbázis kapcsolodás adatai) és feltöltené az adatbázist, majd ha ez sikeres, akkor pedig átirányítana a login oldalra.
Megoldható ez?
Köszönöm szépen
természetesen megoldható!
Ajánlom az alábbi oldalt:
w3schools.com
Tudom, nem jó a kenyv, de kezdőknek tökéletes: PHP 24 óra alatt (vagy valami ilyesmi a címe)
de ott van az ELTE programnyelvek protálja, az is elég jó leírás.
PHP 24 óra alatt könyvet ajánlom én is.
Igaz elavult, mert már 10 éves és sokk minden változott,
de alapokat eltudod sajátítani vele, amire utána tudsz építkezni.
Ez az adatok ellenőrzése nem ilyen egyszerű, hogy pár sorba meglehet írni.
pl. csak gondoljunk arra amikor meg kell nézni, hogy az adott felhasználónév, vagy jelszó már szerepel -e adatbázisba.
Erre csak általános sablont tudunk mutatni, amit utána magadnak kell behelyettesíteni az általad használt adatbázis és táblákkal.
Még azt tudom javasolni, néz kész eljárás mintákat.
Az a baj hogy csak sima c-t tanultunk eddig suliban, php-t nem. Nem nagyon merek belekezdeni, mert nemtudoom milyen nehéz. Bár mondjuk pl az if hasonló felépítése van.
Esetleg abban segítenétek, hogy milyen kritériumokat kell beírjak php-ben majd? pl: üres felhasználónév, ilyen már létezik stb
Csak annyit hogy a lehetőségeket felsorolni.
Köszönöm
> Nem nagyon merek belekezdeni, mert nemtudoom milyen nehéz.
Ha megállsz az ajtó előtt, sosem jutsz be a házba. Ha meg akarod oldani a feladatot, meg kell tanulnod a hozzávalókat.
Ez így igaz, csak nemtalálok olyan helyet ahol nem ezeréves leírásvan, vagy elavult php "parancsokkal", hanem egy új PHP 5 (asszem ez a legújjabb) rendesen elmagyarázva, MAGYARUL, és nemcsak ilyen szövegformázások vannak benne, meg ilyen ratyi cuccok.
Oké persze arra is szükség van, de had ne azzal keljen b_szakodni, hogy formázgatás meg ilyenek, meg Hello world.
Köszi a választ
Még mindig: PHP 24 óra alatt.
Egyèbkènt most még egy hello world-öt sem tudnál kicsikarni magadból.
7-es:
Köszi, ez jólesz!
Tudom van benne biztos hiba, de ebben az egyben segítenétek, kijavítani? Pl: Miért irja ki alul hogy minden mező kitöltése kötelező, alaphelyzetben is? (print)
<link rel="stylesheet" type="text/css" href="css.css" />
<?php
include ('config.php');
print "Regisztráció
<FORM method ='POST' action = ''>
Valódi név: <input type=text name='valodinev' ><br>
Felhasználónév: <input type=text name='nev'><br>
Jelszó: <input type=password name='pass' ><br>
Jelszó újra: <input type=password name='pass2' ><br>
E-mail: <input type=text name='email' ><br>
<input type='submit' name='submit' value='Regisztrálás' ><br>
</FORM>";
include ('config.php');
//Negatív CAPTCHA
//Karakterszures
$aktiv=true;
if($aktiv === true){
$tiltott=array(","," ","?",";",".",":",">","-","_","*","<","$","§","~","\'","\"","^","!","°","%","/","`","=","(",")","¨","¸","+");
foreach ($tiltott as $t){
$proba = explode($t,$_POST['nev']);
if(isset($proba[1])){
print "A név tiltott karaktereket tartalmaz";
exit();
}
}
}
//Név lekérdezése
$db = mysql_query ("SELECT * FROM `zl` WHERE user = '".mysql_real_escape_string($_POST['nev'])."' ");
//Név mezok kitöltésének vizsgálata
if ($_POST['nev'] == "" || $_POST['pass'] == "" || $_POST['email'] == ""){
print "Minden mezo kitöltése KÖTELEZO!
<br /> <A href=register.php>Vissza</A>";
exit();
}
//Annak vizsgálata hogy már létezik ilyen név az adatbázisban
$szam = mysql_num_rows($db);
if ($szam != 0){
print "Sajnálom a ".$_POST['nev']." név már foglalt <br /><A href=register.php>Vissza</A>";
exit();
}
//E-mail cím valódisága:Forma ellenorzése
$let = explode("@",$_POST['email']);
if(isset($let[1]))
{
$let2=explode(".",$_POST['email']);
if(!isset($let2[1]))
{
print "Sajnálom a ".$_POST['email']." cím nem érényes e-mail cím
<br /><A href=register.php>Vissza</A>";
exit();
}
}
else
{
print "Sajnálom a ".$_POST['email']." cím nem érényes e-mail cím
<br /><A href=register.php>Vissza</A>";
exit();
}
//Jelszó és jelszó újra egyezésének vizsgálata
if ($_POST['pass'] != $_POST['pass2']){
print "A két jelszó nem egyezik!
<br /><A href=register.php>Vissza</A>";
exit();
}
//Jelszó md5 hashelése
$pass = md5($_POST['pass']);
//Adatbázisba töltés kódja
$my ="INSERT INTO zl (id, user, pass, email) VALUES ( '', '".mysql_real_escape_string($_POST['nev'])."' , '".mysql_real_escape_string($pass)."' , '".mysql_real_escape_string($_POST['email'])."' )";
//Adatbázisba töltés
if (!mysql_query($my))
{
die('Error: ' . mysql_error());
}
print 'Sikeres regisztráció<br /><A href=login.php>Belépés</A>';
?>
Nyilván azért, mert valamelyik feltétel teljesül ezekből:
if ($_POST['nev'] == "" || $_POST['pass'] == "" || $_POST['email'] == ""){
Írasd ki az itt vizsgált változókat print-tel és meglátod, melyik üres.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!