$_POST-Variablen bei mysql_query

Ich hab ein neues Problem ich weiß nicht ob ich dafür ein neuen Thread aufmachen muss weil der hat hier indirekt was mit zutun. Ich hab das Script ausgebessert jetzt "klappt" es weil vorher wurde ein Fehler angezeigt.:
PHP:
<?php
	
			$host="localhost";
			$username="*****";
			$passwort="";
			$dbname="******";
	
		$connect = mysql_connect($host, $username, $passwort);
		include("/Connections/TEST.php");
		mysql_select_db($db_name);
  
		$res =	   "SELECT `ID` 
						
						FROM `News` 
						
						ORDER BY `ID` DESC
						";
		
		$del = "DELETE FROM
		 `News` WHERE `id`='".mysql_real_escape_string($_POST['id'])."'"
		 ;
		
		$delall = 	"
						DELETE	`NEWS`
							 FROM	 `NEWS`
							 ";
							 
		$change = "		UPDATE
    					`News`
					SET
    					WHERE
    					`ID` = '".mysql_real_escape_string($_POST['ID'])."'";
	
	
		$add = "INSERT INTO `News`
    			`News`
					VALUES
					    '".mysql_real_escape_string($_POST['newstext'])."'";
							 
	//if bedingungen 
	if($_POST['delete'])
	{
	mysql_query($del)  OR die(mysql_error())
	;}
	
	if($_POST['deleteall'])
	{
		mysql_query($delall)  OR die(mysql_error())

	;}
	if($_POST['change'])
	{
	mysql_query($change)  OR die(mysql_error())
	;}
	if($_POST['add'])
	{
		mysql_query($add)  OR die(mysql_error());
}
	?>
Erläuterung: hinter POST sind einfach die englischen begriffe (waren kürzer ;) also ändern, hinzufügen, alle löschen und löschen.)
So wenn ich jetzt Was hizufügen etc. will dann passiert gar nichts alles bleibt wie vorher!
Was ist falsch?
 
Wenn es um das zufügen der Daten geht, probiere einmal folgendes:

PHP:
    $add = 'INSERT INTO 
                        `News`
                   SET
                        `News` = "'.mysql_real_escape_string($_POST['newstext']).'"
           ';
 
Andrej Dyck hat gesagt.:
Es gibt was einfaches.

Beispiel:
PHP:
$sql = "SELECT * FROM table WHERE id = {$_POST['id']}";

Gruß Andrej

Es gibt noch was einfacheres:

PHP:
$sql = "SELECT * FROM table WHERE id = $_POST[id]";

;-)
 
phaeton hat gesagt.:
wie wäre es denn, in deinen change query nach SET anzugeben, welche spalte er mit welchem wert ändern soll?!

Code:
$change = "UPDATE news SET spalte = 'inhalt'  WHERE id = '"$_POST['ID']'"";

Jo cool es klappt. Funktioniert das bei den anderen (change, delete ...) auch so?
 
Prinzipiell musst du wissen, dass du nur die Abfragedeklaration als Zeichenkette in einer Variable speicherst. Daher kannst du diesen Wert auch einfach mal ausgeben und manuell prüfen.
 
Zurück