Det beror inte möjligen på att du blandar ihop POST och GET?
Du använder värden från GET i formuläret som postas med POST. Är det med flit?
4 svar · 381 visningar · startad av Dwarfen
Nu vet jag varken ut eller in.
Har lyckats med detta för något år sedan, men nu vill sig det bara inte...
Skickar fkid=värde från sida 1.
Sida 2 tar imot värdet.
Sedan tar det stop, lyckades ett par gången att slänga in värdet i databasen, men sidan visade ändå fel...
Sedan ändrade jag fid (som var värdet jag skickade från första sida) till fkid, just för att underlätta på sida 2, tänkte, att det skulle bli lättare att skicka från samma "namn" som mottagaren var, men det ville sig inte alls.
Nu har jag verkligen kört fast, har kollat igenom mina gamla sidor, men den vill sig inte =(
Någon som har lust att offra lite av en lördagskväll med att jälpa mig?
<?php
$grymm=$_POST['fkid'];
$username = '';
$password = 'e';
$dbName = '';
mysql_connect('localhost', $username, $password) or die (mysql_error());
mysql_select_db($dbName) or die (schyse());
if ($grymm=="") {
?>
<html>
<head>
<title>Kommentera Film</title>
</head>
<body>
<form method="post" action="kommentera_film.php?fkid=<?echo $_GET['fkid'];?>">
<input type="hidden" name="fkid " value="<?=$_GET['fkid']?>"/>
<input type="text" name="fkommentar" value=""/><br/>
<input type="submit" value="Skicka"/>
</form>
</body>
</html>
<?PHP
} else {
$sql = "insert into kommentera_filmer (fkid, fkuserid, fkommentar) values ('". $_POST['fid'] ."','". $_SESSION['UID'] ."', '". $_POST['fkommentar'] ."')";
mysql_query($sql) or die("Fel: ". mysql_error());
?>
Tack för din kommentar, du skeppas nu till Första sidan.
<meta http-equiv="refresh" content="0;URL=\index.php"/>
<?PHP
}
mysql_close()
?>
Det beror inte möjligen på att du blandar ihop POST och GET?
Du använder värden från GET i formuläret som postas med POST. Är det med flit?
Dwarfen skrev:
<form method="post" action="kommentera_film.php?fkid=<?echo $_GET['fkid'];?>">
<input type="hidden" name="fkid " value="<?=$_GET['fkid']?>"/>
Varför har du fkid som en GET-parameter i formulärets ACTION-attribut? Du har ju dessutom (dock med ett extra mellanslag i slutet!) samma fkid som ett gömt fält i formuläret. Jag skulle nog börja med att rensa ACTION och plocka bort mellanslaget i name="fkid ":
<form method="POST" action="kommentera_film.php">
<input type="hidden" name="fkid" value="<?=$_GET['fkid']?>">
Dwarfen skrev:
$sql = "insert into kommentera_filmer (fkid, fkuserid, fkommentar) values ('". $_POST['fid'] ."','". $_SESSION['UID'] ."', '". $_POST['fkommentar'] ."')";
Tänk på SQL-injection...
Visar du hela sidan, för jag vill minnas att sidan måste inledas med session_start() om du skall hämta variabler från
andy-80 skrev:
Visar du hela sidan, för jag vill minnas att sidan måste inledas med session_start() om du skall hämta variabler från
Nej, det gäller bara om man använder sessionsvariabler (dvs $_SESSION). Har inget med $_POST och $_GET att göra.