Avatar billede t-hviid Nybegynder
20. april 2005 - 22:08 Der er 3 kommentarer og
1 løsning

Hente input fra formular med Session virker ikke

Jeg prøver at hente input fra en formular med session men det virker ikke.
På min formular ser det således ud:
<form action="<?php echo $editFormAction; ?>" method="post" enctype="multipart/form-data" name="form2" onSubmit="FX_processPop()">
  <table align="center">
    <tr valign="baseline">
      <td nowrap align="right">Produkt:</td>
      <td><input type="text" name="produkt" value="" size="32"></td>
    </tr>
    <tr valign="baseline">
      <td nowrap align="right">Antal:</td>
      <td><input type="text" name="antal" value="" size="32"></td>
    </tr>
    <tr valign="baseline">
      <td nowrap align="right">Beskrivelse:</td>
      <td><input type="text" name="beskrivelse" value="" size="32"></td>
    </tr>
    <tr valign="baseline">
      <td nowrap align="right">Forestillinger:</td>
      <td><input type="text" name="forestillinger" value="" size="32"></td>
    </tr>
    <tr valign="baseline">
      <td nowrap align="right">Billede:</td>
      <td><input name="billede" type="file" id="billede"></td>
    </tr>
    <tr valign="baseline">
      <td nowrap align="right">Katagori:</td>
      <td><select name="select" size="1">
        <option>Rekvisit</option>
        <option>Kulisse</option>
        <option>Kostume</option>
      </select></td>
    </tr>
    <tr valign="baseline">
      <td nowrap align="right">Halv&aring;rlig</td>
      <td><input name="halvaarlig" type="checkbox" id="halvaarlig" value="checkbox"></td>
    </tr>
    <tr valign="baseline">
      <td nowrap align="right">Hel&aring;rlig</td>
      <td><input name="helaarlig" type="checkbox" id="helaarlig" value="checkbox"></td>
    </tr>
    <tr valign="baseline">
      <td nowrap align="right">&nbsp;</td>
      <td><input type="hidden" name="udlejerID" value="<?php echo $row_rsUserDetails['Id']; ?>" size="32"></td>
    </tr>
    <tr valign="baseline">
      <td nowrap align="right">&nbsp;</td>
      <td><input type="submit" value="Opret"></td>
    </tr>
  </table>
  <input type="hidden" name="MM_insert" value="form2">
  <input type="hidden" name="FX_upload" value="form2">
</form>

På hente input siden ser det sådanne ud:

<?php
session_start();
if(isset($_POST['produkt'])) {
$_SESSION['test'] = $_POST['produkt'];
}else{
$_SESSION['test'] = "Ingen indhold hentet";
}
?>

Og dette i body tagget:


<p>Dette skrev jeg i produkt: <?php print $_SESSION['test']; ?> </p>

Hvad er der galt?
Avatar billede voirsous Nybegynder
20. april 2005 - 22:54 #1
Prøv at tjekke debugge, ved at tjekke indholdet af dine variabler igennem hele din kode. Så kan du se om de nogensinde bliver sat.
Prøv evt. også med if(strlen($_POST['produkt'])>0) {

Anyway hvorfor har du valign på din <tr> ?
Avatar billede t-hviid Nybegynder
21. april 2005 - 08:15 #2
Det vil sige at koden ser rigtig ud? Hvordan kan jeg tjekke debug? Ang. valign på <tr> er vist en fejl.
Jeg fik ikke skrevet at jeg får Ingen indhold hentet hentet ind.
Avatar billede t-hviid Nybegynder
21. april 2005 - 15:47 #3
Jeg har fundet roden til problemet. Min action sender til dette:
$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
  $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form2")) {
  $insertSQL = sprintf("INSERT INTO produkter (produkt, antal, beskrivelse, forestillinger, billed, udlejerID, katagori, halvaalig, helaarlig) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)",
                      GetSQLValueString($_POST['produkt'], "text"),
                      GetSQLValueString($_POST['antal'], "text"),
                      GetSQLValueString($_POST['beskrivelse'], "text"),
                      GetSQLValueString($_POST['forestillinger'], "text"),
                      GetSQLValueString($_POST['billede'], "text"),
                      GetSQLValueString($_POST['udlejerID'], "text"),
                      GetSQLValueString($_POST['select'], "text"),
                      GetSQLValueString(isset($_POST['halvaarlig']) ? "true" : "", "defined","'Y'","'N'"),
                      GetSQLValueString(isset($_POST['helaarlig']) ? "true" : "", "defined","'Y'","'N'"));

  mysql_select_db($database_test, $test);
  $Result1 = mysql_query($insertSQL, $test) or die(mysql_error());

  $insertGoTo = "/doks/bekraeft.php";
  if (isset($_SERVER['QUERY_STRING'])) {
    $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
    $insertGoTo .= $_SERVER['QUERY_STRING'];
  }
  header(sprintf("Location: %s", $insertGoTo));
}
Avatar billede t-hviid Nybegynder
21. april 2005 - 22:39 #4
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester