Avatar billede dagny Nybegynder
22. maj 2006 - 20:42 Der er 7 kommentarer og
1 løsning

array og loop eller?

Hat et spørgeskema hvor det her skal være muligt at vælge flere svar, men uanset hvad jeg gør sender den kun det sidst valgte til databasen, nogen der ved hvad jeg skal gøre istedet for dette.

<?php


$dbcnx = @mysqli_connect("localhost","root","","testi");
if (!$dbcnx) {
  echo( "<p>Unable to connect to the database server at this time</p>");
  exit();
}
if(isset($_POST['q']))
{
 
  $svar = $_POST['boxset'];

  $sp = (int)$_POST['q'];
 

  mysqli_query($dbcnx,"INSERT INTO primærbenyttelse(sp,svar) VALUES('$sp','$svar')");
}?>








<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<form name="reg" method="post" action="side4.php" >
  <p> Spørgsmål 4: </p>
<p> Hvad benytter du primært silkeborg.dk til? </p>
<input type="hidden" name="q" value="4">

<input type="checkbox" name="boxset"value="attrationer"/>Finde attraktioner<br>
<input type="checkbox" name="boxset"value="arrangementer"/>Arrangementer<br>
<input type="checkbox" name="boxset"value="offentlige"/>Information fra det offentlige<br>
<input type="checkbox" name="boxset"value="v-f information"/>virksomheds og foreningsinformation<br>
<input type="checkbox" name="boxset"value="erhvervliv"/>Erhvervsliv<br>
<input type="checkbox" name="boxset"value="andet"/>Andet<br>

<br> <br>
<input type="submit" name"Vaelgsvar" Value="Vælg"/>
</form>

</body>
</html>
</form>
Avatar billede hmortensen Nybegynder
22. maj 2006 - 21:22 #1
Hvis du navngiver checkboxene boxset[], vil du få et array.
Avatar billede dagny Nybegynder
22. maj 2006 - 21:29 #2
Ok det prøvede jeg lige, men når jeg så tjekker databasen, så står der bare array?
Avatar billede hmortensen Nybegynder
22. maj 2006 - 21:33 #3
Du skal jo bearbejde arrayet. Ønsker du at indsætte de valgte i samme række afskildt af komma?
Avatar billede dagny Nybegynder
22. maj 2006 - 21:40 #4
ja det er præcis sådan, jeg gerne vil ha dem indsat. jeg er helt ny indenfor det her, men bliver da klogere og klogere
Avatar billede hmortensen Nybegynder
22. maj 2006 - 21:57 #5
Så kan du køre en implode() på arrayet.
mysqli_query($dbcnx,"INSERT INTO primærbenyttelse(sp,svar) VALUES('$sp','".implode(",", $svar)."')");
Avatar billede dagny Nybegynder
22. maj 2006 - 22:11 #6
tusind mange tak, så virker det endelig.
Du skulle vel ikke tilfældigvis vide, hvordan jeg eventuelt kan køre en session, der husker svarene når brugeren kører igennem de 8spørgsmål, der ligger på hver sin side.
Jeg ville nemlig gerne om jeg kunne sætte sessionid, ind som brugerid i databasen..


Hvis ikke, så smid et svar så får du point
Avatar billede hmortensen Nybegynder
22. maj 2006 - 22:13 #7
Du kan ligge det i et array. Noget i den her retning burde virke:
$_SESSION['sp1'] = array('sp' => $sp, 'svar' => $svar);
Avatar billede hmortensen Nybegynder
22. maj 2006 - 22:14 #8
Det var så ikke nødvendigt, når du kun skal bruge en kommaseperaret liste.
$_SESSION['sp1'] = array('sp' => $sp, 'svar' => implode(",", $svar));
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