webForumDet fria alternativet

gissa talet program

5 svar · 1 290 visningar · startad av Sanji

SanjiMedlem sedan juli 2009355 inlägg
#1

Hej! jag försöker skriva en php-applikation där man väljer mellan vilka två tal man ska slumpa, och sedan ska man gissa sig fram till vilket talet är. Jag får dock inte igång på det. det verkar inte som att mina $_POST variablar får något värde, är det någon som kan se vad jag gör för fel?

<?php 
session_start();
if(isset($_SESSION['slumptal']))
{
$slumptal = $_SESSION['slumptal'];
}
else
{
if($_POST['txtMin'] != "" && $_POST['txtMax'] != "")
$_SESSION['slumptal'] = rand($_POST['txtMin'], $_POST['txtMax']);
$slumptal = $_SESSION['slumptal'];
echo $slumptal;
}
if(isset($_POST['txtGuess']))
{
if($_POST['txtGuess'] == $_SESSION['slumptal'])
{
echo "Du klarade det!";
}
else
{
if($_POST['txtGuess'] < $_SESSION['slumptal'])
{
echo "du gissade fel! din gissning:". $_POST['txtGuess']. ". Talet är större!";
}
else{
echo "du gissade fel! din gissning:". $_POST['txtGuess']. ". Talet är mindre!";
}
}
}
?>
<form action="gissatalet.php" method="post">
Slumpa
<b>Från: </b> <input type="text" id="txtMin"  />
<b> Till: </b><input type="text" id="txtMax"  />
<input type="submit" value="Slumpa Tal" />
</form>
<br />
<br />
<br />
<form action="gissatalet.php">
<b>Gissa: </b><input type="text" id="txtGuess" name="txtGuess"  />
<input type="submit" id="btnGuess" value="Gissa Tal" />
</form>

så här ser hela sidan ut!

Mvh

metalboyMedlem sedan jan. 2005953 inlägg
#2

Du har inte satt method="post" på ditt andra formulär, så det kommer att skickas som GET.

SanjiMedlem sedan juli 2009355 inlägg
#3

såg att jag glömt method="post" på nedersta formen, men det hoppar ändå inte igång. Dock ser jag värdet jag skrivit in i gissa-textboxen i url-en, så den verkar ju skicka med rätt i alla fall.

metalboyMedlem sedan jan. 2005953 inlägg
#4

Du saknar också name="txtMin" respektive name="txtMax" på dina input-fält.

SanjiMedlem sedan juli 2009355 inlägg
#5

aha! Tackar, det löste problemet!

Mvh

GunnarDMedlem sedan juni 20014 290 inlägg
#6

Sanji skrev:

såg att jag glömt method="post" på nedersta formen, men det hoppar ändå inte igång. Dock ser jag värdet jag skrivit in i gissa-textboxen i url-en, så den verkar ju skicka med rätt i alla fall.

Ser du värdet i url'en så skickar du med GET inte POST.

Med POST så syns inget i URL'en.

Sedan är det som metalboy skriver, du har glömt att namnge inputfälten.

Som felsökning så kan du skriva ut hela $_POST arrayen med print_r($_POST); så ser du vad php skriptet får för värden.

127 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)