webForumDet fria alternativet

nån som kan se felet?

PHP

2 svar · 199 visningar · startad av MaRseY

Medlem sedan maj 2001178 inlägg
Frågan#1
	else if($action == "del"){
		$res = mysql_query("SELECT * FROM polls WHERE ID=$ID");
		$row = mysql_fetch_array($res);
		if($row[pollID] == 0){
			$sql2 = mysql_query("DELETE * FROM polls WHERE pollID=$ID");
			$sql = mysql_query("DELETE * FROM polls WHERE ID=$ID");
		}else{
			$res2 = mysql_query("SELECT * FROM polls WHERE ID=$row[pollID]");
			$row2 = mysql_fetch_array($res2);
			$newa = $row2['antal'] - $row['antal'];
			$update = mysql_query("UPDATE polls SET antal='$newa' WHERE ID=$row2[ID]");
			$sql = mysql_query("DELETE * FROM polls WHERE ID=$ID");
		}
		header("location: $PHP_SELF?what=polls");
		ob_end_flush ();
	}

Använder detta i min admindel för ett pollscript.. men det vill inte funka, för mig ser allt rätt men kanske har gjort nåt slags fel?..
det enda som händer är biten där jag uppdaterar 'antal' i databasen.. men inget tas bort :q

Medlem sedan dec. 200012 464 inlägg
#2

delete * from är inte korrekt sql. (Det är bara access som av någon outgrundlig anledning krävde det.)

Om antal är en numerisk kolumn så borde du inte ha ' omkring värdet. ( Det är nästan (nåja) bara mysql som av någon outgrundlig anledning tillåter det.)

Medlem sedan maj 2001178 inlägg
#3

ahh tack så mkt =)
blev nästan galen på det där, men det va ju helt rätt som du sa :)

259 ms totalt · 4 externa anrop · v20260731065814-full.2f471f9e
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)