Къде е логическата грешка..

DirectX

Registered
Kодът се изпълнява, но ми дава грешка
HTML:
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 '1' at line 1
Грешка: 79

PHP:
<?
include 'connect.db.php';
mysql_query("SET NAMES utf8");
$id = $_GET['id'];
$sql = mysql_query("select * from sklad_names where `SkladID`='$id'") or die(mysql_error()."<br />Грешка: ".__LINE__);
while($row = mysql_fetch_array($sql))
{
$name_out = $row['Name'];
}
?>
<form method="post">
<input name="ime" value="<? echo $name_out; ?>">
<input name="submit" type="submit" value="Промени">
</form>
<?
if(isset($_POST['submit']))
 		{
	$new_name = $_POST['ime'];
	$sql = "Update `sklad_names` SET `Name`='$new_name' WHERE `SkladID`='$id'" or die(mysql_error()."<br />Грешка: ".__LINE__);
	$result = mysql_query($sql)or die(mysql_error()."<br />Грешка: ".__LINE__);
	
	$query = mysql_query("SELECT * FROM `sklad`");
	while(mysql_fetch_array($query)) 
	{
	
		$replace =  mysql_query("Update `sklad` SET `SkladName`='$new_name' where `SkladName`='$name_out'");
		echo "$replace <br>";
	}
	
	$result2 = mysql_query($replace)or die(mysql_error()."<br />Грешка: ".__LINE__);
	
	if(($result && $result2) == TRUE)
	{	
		echo "Всичко точно";
	}
	else 
	{
		echo "Има грешка";
	}
		}
?>
 
PHP:
$sql = "Update `sklad_names` SET `Name`='$new_name' WHERE `SkladID`='$id'" or die(mysql_error()."<br />Грешка: ".__LINE__);

Това какво е ? :D Аз мисля, че тука ти куца нещо.
 
PHP:
$sql = "Update `sklad_names` SET `Name`='$new_name' WHERE `SkladID`='$id'";
трябва да имаш само стринг... die() си го слагай после, когато изпращаш стринга към mysql_query()
 
TryMe каза:
PHP:
$sql = "Update `sklad_names` SET `Name`='$new_name' WHERE `SkladID`='$id'" or die(mysql_error()."<br />Грешка: ".__LINE__);

Това какво е ? :D Аз мисля, че тука ти куца нещо.
:D не го бях забелязал :D:D
 
critrate каза:
TryMe каза:
PHP:
$sql = "Update `sklad_names` SET `Name`='$new_name' WHERE `SkladID`='$id'" or die(mysql_error()."<br />Грешка: ".__LINE__);

Това какво е ? :D Аз мисля, че тука ти куца нещо.
:D не го бях забелязал :D:D

На мен много рязко ми сe наби на очи :D
 
В крайна сметка пипнах няколко други работи и всичко заработи :D
това е крайния код който ползвам и ми върши работа без проблеми за сега
PHP:
<?
include 'connect.db.php';
mysql_query("SET NAMES utf8");
$id = $_GET['id'];
$sql = mysql_query("select * from sklad_names where `SkladID`='$id'") or die(mysql_error()."<br />Грешка: ".__LINE__);
while($row = mysql_fetch_array($sql))
{
$name_out = $row['Name'];
}
?>
<form method="post">
<input name="ime" value="<? echo $name_out; ?>">
<input name="submit" type="submit" value="Промени">
</form>
<?
if(isset($_POST['submit']))
 		{
	$new_name = trim(strip_tags(addslashes($_POST['ime'])));	
			
	$query = mysql_query("SELECT * FROM `sklad` where `SkladName`='$name_out'")or die(mysql_error()."<br />Грешка: ".__LINE__);
	if(mysql_num_rows($query) == 0) {
	$sql = "Update `sklad_names` SET `Name`='$new_name' WHERE `SkladID`='$id'";
	$result = mysql_query($sql)or die(mysql_error()."<br />Грешка: ".__LINE__);
	if ($result == true) echo '<meta http-equiv="refresh" content="0;url=sklad_in.php">';

	}
	else {
	$sql = "Update `sklad_names` SET `Name`='$new_name' WHERE `SkladID`='$id'";	
	while($row = mysql_fetch_array($query)){
	$replace = "UPDATE `sklad` SET `SkladName`='$new_name' where `SkladName`='$name_out'";
			
	$result = mysql_query($sql)or die(mysql_error()."<br />Грешка: ".__LINE__);
	$result2 = mysql_query($replace)or die(mysql_error()."<br />Грешка: ".__LINE__);
	}
	if(($result && $result2) == TRUE)
	{	
	echo '<meta http-equiv="refresh" content="0;url=sklad_in.php">';
	}
	else 
	{
		echo "Има грешка";
	}
	
		}
		}
		
?>
:D
 

Горе