Aha...jag tror jag hänger med :)
Men, då får jag väl göra en för varje person..väl?
UPDATE eva_spelningar SET
anders = 1 WHERE id = {$_POST['id']}
magnus = 1 WHERE id = {$_POST['id']}
71 svar · 3 202 visningar · startad av maweer · sida 3 av 4
Jag borde egentligen kanske inte startat en ny tråd, då jag redan har berört detta i en tidigare. Ber om ursäkt i så fall! Men, då felet egentligen inte har med den andra tråden att göra, så valde jag att jag göra så här. (dock är det samma kod) :) Nu till min fråga: Hur får jag med värdet från id i en submit? Jag får nämligen inte det nu när jag submitar mitt formulär Ber nu om ursäkt för mycke
Läs frågan i sin helhet →Aha...jag tror jag hänger med :)
Men, då får jag väl göra en för varje person..väl?
UPDATE eva_spelningar SET
anders = 1 WHERE id = {$_POST['id']}
magnus = 1 WHERE id = {$_POST['id']}
Jag har gjort fel va? :r
if(isset($_POST['spara'])) { // om knappens namn är spara
$sql = "
UPDATE eva_spelningar
SET tony = 1,
ulf = 1,
carina = 1,
anders = 1,
magnus = 1
WHERE id = {$_POST['id']}
";
mysql_query($sql) or die(mysql_error());
header("Location: form.php?id=".$_POST['id']);
exit;
}
För inget värde läggs in i tabellen och urln borde väl bli något i stil med
eva_spelningar/form.php?=3213131
finnsdet en post med id 3213131 då?
Nä förlåt :) Det var bara ett exempel.
340 finns
Usch jag skäms så att jag inte reder ut detta själv, utan behöver så här mycket hjälp
Om du skickar id i ett hiddenfält i ett formulär med metoden POST, då ska du använda $_POST när du hämtar in värdet. Använder du $_POST så spelar det ingen roll om du också skickar värde i querystringen (GET) - varför skickar du både och?
Om du skriver ut $sql med echo - hur ser det ut då?
Det hände ingenting när jag skrev ut $sql. Den skrev inte ut något
Ändrar jag
WHERE id = {$_POST['id']} till WHERE id = 344, alltså jag fysiskt skriver in id:et så funkar inte det heller.
Menar du min header("Location: form.php?id=".$_POST['id']); ?
Jag vet inte :r Jag har gjort så då jag använt mig av UPDATE tidigare och då har det funkat
Det hände ingenting när jag skrev ut $sql.
Då har du gjort fel. Antingen har du lagt utskriften på fel ställe, eller så har du glömt att ta bort header-raden strax under - den skickar ju iväg dig, så då är det inte konstigt om du inte ser någonting...
Menar du min header("Location: form.php?id=".$_POST['id']); ?
Nej, jag menar att du säger att du tittar efter id i url:en, men när du sparar använder du ju id från formuläret. Det som står i url:en har då ingen betydelse.
Jag har nog gjort något fel antar jag för jag tog bort header-raden
magnus = 1
WHERE id = {$_POST['id']}
";
mysql_query($sql) or die(mysql_error());
}
echo($sql);
?>
Men däremot om jag lägger den längst ner
echo('<td> <input type="checkbox" name="anders" value="anders" /> </td>');
echo('<td> <input type="checkbox" name="magnus" value="magnus" /> </td>');
echo('<td> <input type="submit" value="Spara" name="Spara" /> </td>');
echo("</tr>");
echo("</table>");
echo('</form>');
}
echo($sql);
?>
Så får jag Resource id #3, vilket jag aldrig har sett någon gång förut
lägg din echo direkt efter du har deklarerat $sql
... och om du lägger exit(); på raden under din echo behöver du inte bry dig om resten av scriptet - då exekveringen avbryts.
mvh
Förlåt, men jag måste framstå som mer och mer korkad :r
Ber om ursäkt!
Det skrevs inte ut något
magnus = 1
WHERE id = {$_POST['id']}
";
mysql_query($sql) or die(mysql_error());
echo($sql);
exit;
}
?>
Är det inte för att mysql_query crashar?
lägg koden ovanför mysql_query koden.
och vad är magnus osv för datatyp?
då måste du ha '' runt dom i din SQL fråga. och id då?
if(isset($_POST['spara'])) { // om knappens namn är spara
$sql = "
UPDATE eva_spelningar
SET tony = '1',
ulf = '1',
carina = '1',
anders = '1',
magnus = '1'
WHERE id = {$_POST['id']}
";
mysql_query($sql) or die(mysql_error());
header("Location: form.php?id=".$_POST['id']);
exit;
}
Jag testade faktiskt det igår, men inget lades in i tabellen, tyvärr
vad få du när du postar då?
if(isset($_POST['spara'])) { // om knappens namn är spara
$sql = "
UPDATE eva_spelningar
SET tony = '1',
ulf = '1',
carina = '1',
anders = '1',
magnus = '1'
WHERE id = {$_POST['id']}
";
echo($sql);
exit;
mysql_query($sql) or die(mysql_error());
header("Location: form.php?id=".$_POST['id']);
exit;
}
och vad händer om du försöker köra den frågan du få ut där inne i mysql.. du måste ju få något felmeddelande.
Nä förlåt...tyvärr inget felmeddelande alls
Då verkar det ju som att du inte kommer in i if-satsen ens.
Kommentera bort din kod tillfälligt och prova följande:
echo 'Före if<br>';
if (isset($_POST['spara'])) {
echo 'Inne i if<br>';
}
echo 'Efter if';