Felhasználói adat módosításnál nem megy végbe a lekérdezés!
Sziasztok! Kezdő PHP programozóként sikerült egy login rendszert elkészítenem regisztrációval bejelentkezéssel és sütikkel. De a felhasználó adatainak módosítása nem akar össze jönni.
Az volt az ötletem hogy lejön az az űrlap mint a regisztrációnál kitöltve a már bevitt adatokkal és ezt lehet majd átírni. Így átmásoltam az a <form> utasítást a regisztrációból. Ezután a value értékét megváltoztattam $e_mezöneve paraméterre.
pl így:
ez volt a regisztrációnál:ez lett a beállításoknál:De hogy tisztán lássatok itt a teljes és hibás kód!Remélem tudtok segíteni. A MySQL kapcsolatból biztonsági okokból vettem ki a valós paramétereket.
Előre is Köszönöm a segítséget.
■ Az volt az ötletem hogy lejön az az űrlap mint a regisztrációnál kitöltve a már bevitt adatokkal és ezt lehet majd átírni. Így átmásoltam az a <form> utasítást a regisztrációból. Ezután a value értékét megváltoztattam $e_mezöneve paraméterre.
pl így:
ez volt a regisztrációnál:
- echo'<tr><td>Felhasználó név:</td><td><input type=text name=name value=Felhasználóneved></td></tr>';
- echo'<tr><td>Felhasználó név:</td><td><input type=text name=name value='; print($e_name);
- echo'></td></tr>';
- <?php
- //bejelentkezési állapot ellenőrzése
- if(isset($_COOKIE['login_tailor993_jog']))
- {
- //Felhasználó jogkörének ellenőrzése
- if($_COOKIE[login_tailor993_jog]>0)
- {
- //beléptető sütik megújítása
- $name=$_COOKIE['login_tailor993_name'];
- $jog=$_COOKIE['login_tailor993_jog'];
- setcookie('login_tailor993_jog', '0', time()-10*365*24*60*60);
- setcookie('login_tailor993_name', '0', time()-10*365*24*60*60);
- setcookie('login_tailor993_jog', $jog, time()+2*60*60);
- setcookie('login_tailor993_name', $name, time()+2*60*60);
- //felhasználó felület
- echo'<body bgcolor=#FFFFCC><h1>Beállítások</h1><a target=_self href=./main.php>Vissza a főmenübe!</a>';
- //MySQL kapcsolódás eleje
- $kapcsolat = mysql_connect("Host", "Felhasználó név", "Jelszó");
- if (!$kapcsolat) die("Nem sikerült kapcsolódni az adatbázishoz!");
- mysql_select_db("tailor993", $kapcsolat) or die("Nem sikerült kiválasztani az adatbázist!");
- //MySQL kapcsolódás vége
- //MySQL művelet eleje
- $sql_jog="select jog from login where name='$name'" ;
- $e_jog = mysql_query($sql_jog, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (2)! A hiba oka: ".mysql_error()));
- $sql_date="select date from login where name='$name'" ;
- $e_date = mysql_query($sql_date, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (3)! A hiba oka: ".mysql_error()));
- $sql_id="select id from login where name='$name'" ;
- $e_id = mysql_query($sql_id, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (4)! A hiba oka: ".mysql_error()));
- $sql_vezetek = "select vezer from login where name=$name" ;
- $e_vezetek = mysql_query($sql_vezetek, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (5)! A hiba oka: ".mysql_error()));
- $sql_kereszt="select kereszt from login where name='$name'" ;
- $e_kereszt = mysql_query($sql_kereszt, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (6)! A hiba oka: ".mysql_error()));
- $sql_email="select email from login where name='$name'" ;
- $e_email = mysql_query($sql_email, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (7)! A hiba oka: ".mysql_error()));
- $sql_szulet="select szulet from login where name='$name'" ;
- $e_szulet = mysql_query($sql_szulet, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (8)! A hiba oka: ".mysql_error()));
- $sql_nevnap="select nevnap from login where name='$name'" ;
- $e_nevnap = mysql_query($sql_nevnap, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (9)! A hiba oka: ".mysql_error()));
- $sql_horoszkop="select horoszkop from login where name='$name'" ;
- $e_horoszkop = mysql_query($sql_horoszkop, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (10)! A hiba oka: ".mysql_error()));
- $sql_lakik="select lakik from login where name='$name'" ;
- $e_lakik = mysql_query($sql_lakik, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (11)! A hiba oka: ".mysql_error()));
- $sql_tel="select tel from login where name='$name'" ;
- $e_tel = mysql_query($sql_tel, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (12)! A hiba oka: ".mysql_error()));
- $sql_fogl="select fogl from login where name='$name'" ;
- $e_fogl = mysql_query($sql_fogl, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (13)! A hiba oka: ".mysql_error()));
- $sql_text="select text from login where name='$name'" ;
- $e_text = mysql_query($sql_text, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (14)! A hiba oka: ".mysql_error()));
- $sql_hogy="select hogy from login where name='$name'" ;
- $e_hogy = mysql_query($sql_hogy, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (15)! A hiba oka: ".mysql_error()));
- $sql_fogl="select fogl from login where name='$name'" ;
- $e_fogl = mysql_query($sql_fogl, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (16)! A hiba oka: ".mysql_error()));
- $sql_nem="select nem from login where name='$name'" ;
- $e_nem = mysql_query($sql_nem, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (17)! A hiba oka: ".mysql_error()));
- $sql_pass="select password from login where name='$name'" ;
- $e_pass = mysql_query($sql_pass, $kapcsolat) or die(print("Nem sikerült a művelet végrehajtása (18)! A hiba oka: ".mysql_error()));
- print($e_vezetek);
- //MySQL művelet vége
- $email=$e_email;
- echo'<form method=POST action=./options_fix.php>
- Az azonosító számod: ';
- switch($e_jog){
- case 0:
- echo'0';
- break;
- case 1:
- echo'1';
- break;
- case 2:
- echo'2';
- break;
- case 3:
- echo'3';
- break;
- case 4:
- echo'4';
- break;
- case 5:
- echo'5';
- break;
- case 6:
- echo'6';
- break;
- case 7:
- echo'7';
- break;
- case 8:
- echo'8';
- break;
- case 9:
- echo'9';
- break;
- case 10:
- echo'10';
- break;
- case 11:
- echo'11';
- break;
- case 12:
- echo'12';
- break;
- case 13:
- echo'13';
- break;
- case 14:
- echo'14';
- break;
- case 15:
- echo'15';
- break;
- case 16:
- echo'16';
- break;
- case 17:
- echo'17';
- break;
- case 18:
- echo'18';
- break;
- case 19:
- echo'19';
- break;
- case 20:
- echo'20';
- break;
- case 21:
- echo'21';
- break;
- case 22:
- echo'22';
- break;
- case 23:
- echo'23';
- break;
- case 24:
- echo'24';
- break;
- case 25:
- echo'25';
- break;
- case 26:
- echo'26';
- break;
- case 27:
- echo'27';
- break;
- case 28:
- echo'28';
- break;
- case 29:
- echo'29';
- break;
- case 30:
- echo'30';
- break;
- case 31:
- echo'31';
- break;
- }
- echo' <br>
- A jogosultsági köröd: ';
- switch($e_jog){
- case 0:
- echo'0';
- break;
- case 1:
- echo'1';
- break;
- case 2:
- echo'2';
- break;
- case 3:
- echo'3';
- break;
- case 4:
- echo'4';
- break;
- case 5:
- echo'5';
- break;}
- $date=$e_date;
- $sor=mysql_fetch_array($e_vezetek, MYSQL_ASSOC);
- FOREACH($sor as $i=>$ertek)
- {print"$ertek";}
- echo' <br>
- A regisztrációd ideje: '; print($date1); echo' <br>
- A így találtál ide: '; print($e_hogy); echo' <br>
- <table>
- <tr><td>Felhasználónév:</td><td><input type=text name=name value=';print($name);echo'></td></tr>
- <tr><td>vezetéknév:</td><td><input type=text name=vezetek value=';print($e_vezetek);echo'></td></tr>
- <tr><td>Keresztnév:</td><td><input type=text name=kereszt value=';print($e_kereszt);echo'></td></tr>
- <tr><td>E-mail:</td><td><input type=text name=email value=';print($email);echo'></td></tr>
- <tr><td>Születésnap:</td><td><input type=text name=szulet value=';print($e_szulet);echo'></td></tr>
- <tr><td>Névnap:</td><td><input type=text name=nevnap value=';print($e_nevnap);echo'></td></tr>
- <tr><td>Horoszkóp:</td><td><input type=text name=horoszkop value=';print($e_horoszkop);echo'></td></tr>
- <tr><td>Lakhely:</td><td><input type=text name=lakik value=';print($e_lakik);echo'></td></tr>
- <tr><td>Telefonszám:</td><td><input type=text name=tel value=';print($e_tel);echo'></td></tr>
- <tr><td>Foglalkozás</td><td><input type=text name=fogl value=';print($e_fogl);echo'></td></tr>
- <tr><td>Nemed:</td><td>';
- if($e_nem==='f'){
- echo'<label><input type=radio value=n name=nem>Nő<br><input type=radio check=check value=f name=nem>Férfi</label>';}
- elseif($_nem==='n'){
- echo'<label><input type=radio value=n check=check name=nem>Nő<br><input type=radio value=f name=nem>Férfi</label>';}
- else{
- echo'<label><input type=radio value=n name=nem>Nő<br><input type=radio value=f name=nem>Férfi</label>';}
- Echo'
- </td></tr>
- <tr><td>Megjegyzés:</td><td><textarea name=text value=';print($e_text);echo'></textarea></td></tr>
- <tr><td>Régi jelszó:</td><td><input type=password name=oldpass ></td></tr>
- <tr><td>Új jelszó</td><td><input type=password name=pass1 ></td></tr>
- <tr><td>Új jelszó ismét:</td><td><input type=password name=pass2 ></td></tr>
- </table>
- <input type=submit value=Módosít name=send>
- </form>
- ';
- }
- //sikertelen beléptetés
- else
- echo'<body bgcolor=#FFFFCC>Nincs megfelelő jogköröd az oldal megtekintéséhez! <a target=_self href=./login.php>Vissza</a>';
- }
- else
- echo'<body bgcolor=#FFFFCC> Nem vagy bejelentkezve! <a target=_self href=./login.php> Jelentkezzbe</a> vagy ha nem vagy regisztrálva <a target=_self href=./reg.php>regisztrálj</a>!';
- ?>
Előre is Köszönöm a segítséget.
Utóirat
UPDATE
UPDATE
SQL utasítást sem így nem értem mit takar számodra a módosítás. Ha teszel egy lekérdezést, akkor az sorokat fog visszaadni, amiket külön még ki kell szedned mysql_fetch_* műveletekkel.Re: UPDATE
Nincs itt hiba...
Részletesebben:
Ahhoz hogy a lekérdezésed eredményét megjelenítsd egy másik függvényre van szükséged: mysql_fetch_array, mysql_fetch_assoc, mysql_result. Bármelyiket választhatod.
Érdemes lenne az egyes elemek lekérdezéseit összevonni. Én vizsgálnám azt is, hogy a megadott $name szerepel-e egyáltalán az adatbázisban és levédeném a sütiből származó adatokat. A miértről további olvasnivaló itt.
OFF - Switch lecserélése