23. januar 2010 - 14:48Der er
37 kommentarer og 1 løsning
Gennemskue fejl i i scrip med session
Mit første script med session virker atter ikke. Jeg har fået hjælp fra Eks. med flg. der desværre ikke henter noget fra tabellen BI mere. Jeg må have gjort et el. andet galt da jeg forsøgte at oprette endnu en session.<?php if($_POST['op'] == "ds"){
$find = array();
echo "Du har denne dato:<br>{$_SESSION['gin']}"; echo "<BR>Valgt {$_SESSION['nin']}"; echo "<BR>Der jo koster{$_SESSION['pris']}"; echo "<BR>og kan få denne tid:{$_SESSION['mas']}<BR>Ekstra tilbehør:<BR>";
if (isset($_POST['varer'])) { echo "dejligt"; include "../dat/conn.php"; $kr_ialt = 0; foreach($_POST['varer'] as $kud) {
$find[] = $kud;
$foresp = mysql_query("SELECT * WHERE navn IN ('".implode("','",$find)."')")or die (mysql_error());
Ups Fejlen i: $foresp = mysql_query("SELECT * WHERE navn IN ('".implode("','",$find)."')")or die (mysql_error()); er rettet $foresp = mysql_query("SELECT * FROM bi WHERE navn IN ('".implode("','",$find)."')")or die (mysql_error());
Der hvor det ikke virker er i udtrækket fra bi..... Når jeg sætter if(mysql_num_rows($foresp) > 0) { echo "indhold";} kommer der ikke til at stå indhold.
Jeg får godtnodt de første echoer frem her under isset men intet under foreach. if (isset($_POST['varer'])) { $varer = $_POST['varer']; echo "<br />".$varer[0]; echo "<br />".$varer[1]; echo "<br />".$varer[2]; echo "<br />".$varer[3]; echo "<br />".$varer[4];
$kr_ialt = 0; $find = array();
foreach($varer[] as $kud) {
} $sql = "SELECT * FROM bi WHERE navn IN ('".implode("','",$find)."')" or die (mysql_error()); while ($rows=mysql_fetch_assoc($sql)){
Jeg har jo de gamle sessions f.eks.$_SESSION['nin'] der viser datoen på den foregående side. men som ikke vises ved echo "Du har denne dato:<br>{$_SESSION['ialtkr']}";
Hvordan sætter jeg de gamle sessions videre? Du skal iøvrigt bare lægge et svar så deler jeg pointene.
Men jeg sætter jo senere på siden $_SESSION['gin'] = $_POST['datoen']; $_SESSION['nin'] = $_POST['navnet']; $_SESSION['mas'] = $_POST['massage']; $_SESSION['pris'] = $_POST['pris'];
og kan vel ikke sætte dem op til session_start før jeg tjekker if($_POST['op'] == "ds")
Skal desværre gå nogle timer, men tænker over hvordan jeg får listen med alle navn + kr med over på den sidste side. $sql = "SELECT * FROM bi WHERE navn IN ('".implode("','",$find)."')";
$foresp = mysql_query($sql)or die (mysql_error());
Det tætteste jeg kommer er på næstsidste side at kunne echo "('".implode("','",$find)."')"; og listen ses. Har forsøgt snart sagt alt. Men jeg kan ikke f.eks. sige $_session['find'] = "('".implode("','",$find)."')"; $_session['find'] blir kun eet element i listen.
Jeg forsøgte først at gøre som du sagde og skifte $find ud med sessionen men siden vises så ikke. if (isset($_POST['varer'])) { echo "<BR><BR><B>Desuden følgende ekstra:</B><br>";
$varer = $_POST['varer'];
$kr_ialt = 0; $_SESSION["find"] = array();
foreach($varer as $kud){
$_SESSION["find"] = $kud; }
$sql = "SELECT * FROM bi WHERE navn IN ('".implode("','",$_SESSION["find]")."')";
$foresp = mysql_query($sql)or die (mysql_error());
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.