Kezdőoldal » Számítástechnika » Programozás » Mi lehet a hiba?

Mi lehet a hiba?

Figyelt kérdés

nem tudok rajonni? van egy kodom:


<?php

session_start();

include("connect.php");


if( !isset( $_SESSION["belepve"] ))

{

die("Nem vagy belépve!");

}


$user_id=$_SESSION["user_id"];


if(isset($_POST["modosit"]))

{

if(!empty($_POST["oldpass"]) AND !empty($_POST["ujpass"]) AND !empty($_POST["ujpass2"]))

{



$sql="select * from felhasznalok WHERE user_id='$user_id' LIMIT 1";

$eredmeny = mysql_query($sql) or die(mysql_error() );

if(mysql_num_rows($eredmeny)==0)

{

die("Nem létező felhasználó!");

}

else

{

$adatok=mysql_fetch_assoc($eredmeny);

}


if( md5($_POST["oldpass"]) == $adatok["jelszo"])

{


if($_POST["ujpass"] != $_POST["ujpass2"])

{

$errors[]="A két jelszó nem egyezik!";

}

else

{

$password=md5($_POST["ujpass"]);

$jelszomodositas="jelszo='$password' , ";

$sikeresjelszomodositas=1;


}


}

else{

$errors[]="Régi jelszó nem helyes!";


}


}

else

{

$jelszomodositas='';

}


$update="UPDATE felhasznalok SET $jelszomodositas WHERE user_id=$user_id";

mysql_query($update) or die( mysql_error());

$sikeresupdate=1;

}



$sql="select * from felhasznalok WHERE user_id='$user_id' LIMIT 1";

$eredmeny = mysql_query($sql) or die(mysql_error() );

if(mysql_num_rows($eredmeny)==0)

{

die("Nem létező felhasználó!");

}

else

{

$adatok=mysql_fetch_assoc($eredmeny);

}



header('Content-Type: text/html; charset=utf-8');



?>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Profil</title>

<?php include("stilus.css"); ?>

</head>

<body>

<?php include("fejlec.php"); ?>

<?php


if(isset($sikeresjelszomodositas))

{

echo "Sikeres jelszómódosítás!<br />";

}


if(isset($sikeresupdate))

{

echo "Sikeres adatmódosítás!<br />";

}

if(isset($errors) AND count($errors)>0)

{

echo "Hiba volt a kitöltés során!<br />";

foreach($errors AS $err)

{

echo $err."<br />";

}

}

?>

<br />

<center>

<form method="post">

<table><td>Adatmódosítás</td><tr />

<td>Jelszómódosítás:</td><tr />

<td>Régi jelszó:</td> <td><input type="password" name="oldpass"></td><tr />

<td>Új jelszó:</td> <td><input type="password" name="ujpass"></td><tr />

<td>Új jelszó mégegyszer:</td> <td><input type="password" name="ujpass2"></td><tr />

<td colspan="2" align="center">

<input type="submit" name="modosit" value="Módosítás"></td>


</table>

</form>

</center>

</body>

</html>



es ha siman ranyomok a modositasra ezt irja ki:



"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE user_id=1' at line 1"


2013. nov. 1. 21:34
 1/4 anonim ***** válasza:
ilyen hosszú kódnál érdemes [link] erre vagy valami hasonló kódfeltöltősre felrakni átláthatóság érdekében. egyébként nem tudom mi a hiba
2013. nov. 2. 00:01
Hasznos számodra ez a válasz?
 2/4 anonim ***** válasza:

$update="UPDATE felhasznalok SET $jelszomodositas WHERE user_id=$user_id"; mysql_query($update) or die( mysql_error()); $sikeresupdate=1;


Mi a SET után a $jelszomodositas?

Mysql_query($update) nem változóhoz van rakva

2013. nov. 2. 00:14
Hasznos számodra ez a válasz?
 3/4 A kérdező kommentje:
$jelszomodositas="jelszo='$password' , ";
2013. nov. 2. 03:14
 4/4 anonim ***** válasza:
Szerintem töröld ki az összes MySQL_errort, aztán egyesével írd oda, úgy hogy a kódban MAX 1x szerepeljen lekérdezésenként, mert így még azt is nehéz látni, hogy hol lehet a hiba
2013. nov. 2. 08:17
Hasznos számodra ez a válasz?

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!