creAtiive Skrevet 3. august 2008 Del Skrevet 3. august 2008 (endret) <?php if(array_key_exists('flykvalg', $_POST)) { $reisemal = mysql_real_escape_string($_POST['sted']); if(empty($reisemal)) { ?> <meta http-equiv="Refresh" content="0;url=flyplass.php"> <?php } /* henter ut pengesummene for turen */ $sqql = mysql_query("SELECT pris FROM steder WHERE sted = '$reisemal'"); if($hent['peng'] < $sqql) { echo 'For lite summer i PUNGEN'; } else { $minus1 = $hent['peng']; $minus2 = $sqql; $minus3 = $minus1 - $minus2; $minus4 = $minus3; $minus5 = number_format($minus4); echo $minus5; echo $sqql; $w = mysql_query("UPDATE `brukere` SET `bosted`='$reisemal', `peng`='$minus5' WHERE `id`='" . $_SESSION['id'] . "'"); echo 'Velkommen til <strong>' . $reisemal . '</strong>.'; } } else { ?> <form action="flyplass.php" method="post"> <table align="center" width="400" class="table2" border="1" bordercolor="#000000" style="margin-top:30px;"> <tr> <td height="20" colspan="2" align="center" style="background-image:url(bilder/tdbak.png); background-repeat:repeat-x; padding-left:5px; color:#000000;"><strong>FLYPLASS</strong></td> </tr> <tr> <td colspan="2" align="center"><img src="bilder/flyplass.jpg" border="1" style="margin:5px;"></td> </tr> <tr> <td width="291" height="20" style="background-image:url(bilder/tdbak.png); background-repeat:repeat-x; padding-left:5px; color:#000000;"><strong>Sted</strong></td> <td width="93" height="20" style="background-image:url(bilder/tdbak.png); background-repeat:repeat-x; padding-left:5px; color:#000000;"><strong>Pris</strong></td> </tr> <?php $sqql = "SELECT * FROM steder"; $sqqql = mysql_query($sqql); while ($sted = mysql_fetch_array($sqqql)) { if($sted['sted'] == $hent['bosted']) { } else { echo '<tr><td style="padding:5px;"><input type="radio" name="sted" value="' . $sted['sted'] . '"> ' . $sted['sted'] . '</td><td style="padding:5px;"><strong>' . $sted[pris] . '</strong> kr</td></tr>'; } } ?> <tr> <td style="padding:5px;" colspan="2" align="right"><input type="submit" name="flykvalg" value=" Reis! "></td> </tr> </table> </form> <?php } ?> _________________________________ _________________________________ echo $minus5; echo $sqql; $w = mysql_query("UPDATE `brukere` SET `bosted`='$reisemal', `peng`='$minus5' WHERE `id`='" . $_SESSION['id'] . "'"); echo 'Velkommen til <strong>' . $reisemal . '</strong>.'; Printer ut: 9,880Resource id #14Velkommen til Oslo. Problem: Prisen på å reise til hver by kommer ikke opp riktig(feil tall) Database: - id på by - by - pris for å reise altså 3 rader.. _____________________________________ _____________________________________ Når jeg prøver spørringen i phpmyadmin, så fungerer det helt fint. Så hva er feil? Endret 3. august 2008 av creAtiive Lenke til kommentar
grimjoey Skrevet 3. august 2008 Del Skrevet 3. august 2008 (endret) // henter ut pengesummene for turen $sqql = mysql_query("SELECT pris FROM steder WHERE sted = '$reisemal'"); if($hent['peng'] < $sqql) { echo 'For lite summer i PUNGEN'; } mysql_query returnerer en ressurs. for å hente data fra ressursen må du bruke en av følgende: mysql_fetch_row() mysql_fetch_array() // samme som ovenfor men har flere options mysql_fetch_assoc() mysql_fetch_object() // henter ut pengesummene for turen $sqql = mysql_query("SELECT pris FROM steder WHERE sted = '$reisemal'"); $row = mysql_fetch_row($sqql); $sqql= $row[0]; if((int)$hent['peng'] < (int)$sqql) { echo 'For lite summer i PUNGEN'; } Endret 3. august 2008 av grimjoey Lenke til kommentar
creAtiive Skrevet 3. august 2008 Forfatter Del Skrevet 3. august 2008 (endret) // henter ut pengesummene for turen $sqql = mysql_query("SELECT pris FROM steder WHERE sted = '$reisemal'"); if($hent['peng'] < $sqql) { echo 'For lite summer i PUNGEN'; } mysql_query returnerer en ressurs. for å hente data fra ressursen må du bruke en av følgende: mysql_fetch_row() mysql_fetch_array() // samme som ovenfor men har flere options mysql_fetch_assoc() mysql_fetch_object() // henter ut pengesummene for turen $sqql = mysql_query("SELECT pris FROM steder WHERE sted = '$reisemal'"); $row = mysql_fetch_row($sqql); $sqql= $row[0]; if((int)$hent['peng'] < (int)$sqql) { echo 'For lite summer i PUNGEN'; } 1. Løsningen din fungerte ikke. 2. Hva betyr $row[0] ? 3. Hva er vits med å sette på (int) ? Endret 3. august 2008 av creAtiive Lenke til kommentar
grimjoey Skrevet 3. august 2008 Del Skrevet 3. august 2008 (endret) det er godt mulig det er flere feil. post gjerne resultatet du fikk. mysql_query() returnerer en ressurs med ressursen kan vi hente ut data. $resource = mysql_query("SELECT pris FROM steder WHERE sted='$reisemal';"); $row = mysql_fetch_row($resource); nå er $row et array som inneholder den første raden i resultatet. $row[0] returnerer den første kolonnen (feltet) $row[1] returnerer den andre kolonnen osv (int) gjør om datatypen til integer (heltall) det kan være en fordel å bruke int når du sammenlikner størrelse selv om php evaluerer tekst strenger også. dersom du bruker desimaltall kan du benytte (float) i stedet. Endret 3. august 2008 av grimjoey Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå