Hejsan...
Försöker konvertera lite ASP kod till PHP men har lite problem..
ASP:
For Each ID In Request.Form
If IsNumeric(Request.Form(ID)) Then
Antal = Request.Form(ID)
Else
Antal = 0
End If
If Antal > 0 Then
Conn.Execute("Update shop_temp Set quantity=" & Antal & " Where ID='" & ID & "' And sid=" & Session.SessionID)
Else
Conn.Execute("Delete From shop_temp Where ID='" & ID & "' And sid=" & Session.SessionID)
End If
Next
Response.Redirect "kundvagn.asp"
Så här har jag översatt det jag kunnat. Problemet är For Each ID In Request.Form delen i ASP.
For Each ID In Request.Form {
if (is_numeric($_POST[ID]) == "true") {
$antal = $_POST[ID];
}else{
$antal = 0;
}
if ($antal > 0) {
mysql_query("Update TEMP Set quantity='".$antal."' Where ID='".$_POST[ID]."' And SiD='".session_id()."'");
}else{
mysql_query("Delete From TEMP Where ID='".$_POST[ID]."' And SiD='".session_id()."'");
}
}
header ("Location: kundvagn.php");
Kan hända att en hel del måste ändrar när For Each ID In Request.Form delen har fixats.
tydalMedlem sedan juni 20034 013 inlägg foreach ($_POST as $key => $value)
{
if (is_numeric($value) && $key == "ID")
mysql_query("UPDATE shop_temp SET quantity = $value WHERE ID = $value AND sid = " . session_id());
elseif ($key == "ID")
mysql_query("DELETE FROM shop_temp WHERE ID = '$value' AND sid = " . session_id());
}
header("Location: kundvagn.php");
Testat koden och den fungerar inte..
Kanske beror på att ID (For Each ID In Request.Form) har OLIKA värden beroende på hur många olika varor man har i kundvagnen.
ID=1
ID=2
osv osv.
så att $key == "ID" vet jag inte om det stämmer. för ID är ju alttid ID, men värdet kan vara olika..
ID i Formuläret skickas alltså som ID=SIFFRA.(1,2,3,osv osv).
tydalMedlem sedan juni 20034 013 inlägg foreach ($_POST as $key => $value)
{
if (is_numeric($value) && $key == "ID" && $value > 0)
mysql_query("UPDATE shop_temp SET quantity = $value WHERE ID = $value AND sid = " . session_id());
elseif ($key == "ID")
mysql_query("DELETE FROM shop_temp WHERE ID = '$value' AND sid = " . session_id());
}
header("Location: kundvagn.php");
Ska prova nya koden du skrev bara för att se om den fungerar också.
lyckades annars lösa hur koden skulle se ut och den fungerar nu.
foreach ($_POST as $key => $value) {
if (is_numeric($value) && $value != "0") {
mysql_query("Update TEMP Set quantity='".$value."' Where ID='".$key."' And SiD='".session_id()."'");
}else{
mysql_query("Delete From TEMP Where ID='".$key."' And SiD='".session_id()."'");
}
}
header ("Location: kundvagn.php");