Gå til innhold

Checkbox mysql hjelp [LØST]


Anbefalte innlegg

Hei,

 

jeg har et problem jeg trenger hjelp til.

 

Jeg holder på å lage et kunderegistreringssystem som omfatter 3 tabeller i mysql.

 

tabell 1: kundeinfo

tabell 2: pakker

tabell 3: tilleggtjenester.

 

På registreringsformen for "kundeinfo" så henter jeg ut 'tilleggtjenester'

og skriver dem til formen.

 

slik

 

<?php

include 'config.php'; 
mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( "kan ikke hente databasen");
$query="SELECT * FROM tilleggstjenester ORDER BY id ASC"; 
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();

$n=0;
while ($n < $num) {

# Database felt 
$id=mysql_result($result,$n,"id");
$tjenestenavn=mysql_result($result,$n,"tjenestenavn");
# Database felt 

echo '<input name="tilleggstjenester[]" type="checkbox" value="'.$id.'">'.$tjenestenavn.'<br>';


$n++;
}
?>

 

 

checkboxene blir postet til kundeinfo tabellen som et serialized array.

 

Jeg har også en form for redigering/endring av kundeinfo, og tilleggstjenestene kunden abonerer på blir skrevet til redigering/endring formen silk.

 

 

<?php
include 'config.php';
$id = $_GET['id'];
mysql_connect(localhost,$username,$password);
mysql_select_db($database) or die( "kan ikke hente databasen");
$query="SELECT * FROM kunderegister WHERE id='$id'";
$result=mysql_query($query);
$num=mysql_numrows($result); 
mysql_close(); # close
$i=0;
while ($i < $num) {


$id=mysql_result($result,$i,"id");
$tilleggstjenester =mysql_result($result,$i,"tilleggstjenester");
$tilleggstjenester=unserialize($tilleggstjenester);

foreach($tilleggstjenester as $id){  
 mysql_connect(localhost,$username,$password);
 mysql_select_db($database) or die( "Kan ikke velge databasen");
 $query="SELECT * FROM tilleggstjenester WHERE id='$id'";
 $result=mysql_query($query);
 $num=mysql_num_rows($result);

 $t=0;
 while ($t < $num) {

 $id=mysql_result($result,$t,"id");
 $tjenestenavn=mysql_result($result,$t,"tjenestenavn");

    echo '<input type="checkbox" name="checkbox[]" value="'.$id.'" checked><option>'.$tjenestenavn.'<br>'; 
 ++$t;
 }              
  }            
$i++;
}
?>

 

problemet er at denne php koden kun skriver de tilleggstjenestene kunden abbonerer på som 'checked', jeg vil også at den skal skrive en 'unchecked' checkbox for de tilleggstjenestene kunden ikke abbonerer på slik at jeg kan endre kundeinfo hvis kunden ønsker flere tjenester senere.

 

Noen forslag til løsning, evt en annen og bedre metode?

 

Chris

Endret av Silverviper
Lenke til kommentar
Videoannonse
Annonse

CREATE TABLE `tilleggstjenester` (
 `id` int(25) NOT NULL auto_increment,
 `tjenestenavn` varchar(255) NOT NULL default '',
 `beskrivelse` text NOT NULL,
 `pris` varchar(255) NOT NULL default '',
 `etablering` varchar(255) NOT NULL default '',
 PRIMARY KEY  (`id`)
) TYPE=MyISAM AUTO_INCREMENT=246;

 

 

CREATE TABLE `kunderegister` (
 `id` int(9) NOT NULL auto_increment,
 `domene` varchar(255) NOT NULL default '',
 `firmanavn` varchar(255) NOT NULL default '',
 `kontaktperson` varchar(255) NOT NULL default '',
 `epost` varchar(255) NOT NULL default '',
 `telefon` varchar(25) NOT NULL default '',
 `mobil` varchar(25) NOT NULL default '',
 `fax` varchar(25) NOT NULL default '',
 `addresse` varchar(255) NOT NULL default '',
 `postnr` varchar(8) NOT NULL default '',
 `poststed` varchar(50) NOT NULL default '',
 `orgnr` varchar(50) NOT NULL default '',
 `kundedato` varchar(15) NOT NULL default '',
 `fakturert` varchar(32) NOT NULL default '',
 `nestefaktura` varchar(15) NOT NULL default '',
 `pakke` varchar(255) NOT NULL default '',
 `tilleggstjenester` varchar(255) NOT NULL default '',
 `servertype` varchar(255) NOT NULL default '',
 `statistikk` varchar(20) NOT NULL default '',
 `subdomene` varchar(20) NOT NULL default '',
 `ekstratrafikk` varchar(20) NOT NULL default '',
 `sql_size` varchar(20) NOT NULL default '',
 `domeneparkering` varchar(20) NOT NULL default '',
 `ftp_host` varchar(255) NOT NULL default '',
 `ftp_bruker` varchar(32) NOT NULL default '',
 `ftp_pass` varchar(32) NOT NULL default '',
 `sql_host` varchar(255) NOT NULL default '',
 `sql_db` varchar(255) NOT NULL default '',
 `sql_bruker` varchar(32) NOT NULL default '',
 `sql_pass` varchar(32) NOT NULL default '',
 `mail_url` varchar(255) NOT NULL default '',
 `mail_bruker` varchar(32) NOT NULL default '',
 `mail_pass` varchar(32) NOT NULL default '',
 `annet` text NOT NULL,
 `notater` text NOT NULL,
 PRIMARY KEY  (`id`)
) TYPE=MyISAM AUTO_INCREMENT=36;

 

Chris

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...