Avatar billede leif Seniormester
19. april 2008 - 19:19 Der er 12 kommentarer og
1 løsning

Nemmeste både at have flere felter med samme navn

Hej,

Hvis man skal have fx. 10 linier Input felter med Nummer, Beskrivelse, Antal og Pris

Hvad er så nemmest ?

Jeg skal gerne have det ind i databasen som 10 individuelle linier

På forhånd tak

/Leif
Avatar billede g1mzee Nybegynder
19. april 2008 - 19:26 #1
Kan man få lidt mere information?
Du kan jo selv lave en længde på dit input. ved length . hvis det er det du søger.
Avatar billede leif Seniormester
19. april 2008 - 19:34 #2
Fx:
Nummer | Beskrivelse | Antal | Pris
Input  | Input      | Input | Input
Input  | Input      | Input | Input
Input  | Input      | Input | Input
Input  | Input      | Input | Input
Input  | Input      | Input | Input
Input  | Input      | Input | Input




Det er ikke Længde på selve feltet det er jeg ligeglad med, men reelt skal jeg bruge 10 felter som alle har noget med Nummer at gøre. Jeg mener man kan bruge noget nummer[], men så har jeg bare ingen idé om hvordan jeg trækker det ud nemmest ?
Avatar billede g1mzee Nybegynder
19. april 2008 - 19:53 #3
har lidt svært ved at se din tankegang :p

men, efterskom du siger at du gerne vil have det ind i en database. vil en query nok være en god ide til at få det ud igen.
når du har de 10 inde, har de et id hver. hvilket nok er i dit tilfælde nummer.
mysql_query ("SELECT * FROM database WHERE nummer= $nummer");

ved denne query får du alt ud, der er forbundet med nummer. så hvis vi har nummer 2. får vi den beskrivelse, antal og pris med.

skriv lige tilbage om det er det du søger :p. heh.
Avatar billede leif Seniormester
19. april 2008 - 20:04 #4
Jeg er skam godt klar over hvordan jeg får det ud af databasen når det er der inde.

Men jeg skal bruge en nem måde at have fx se http://ljnet.dk/exp/828479/Tegning1.JPG


Men idag er det måske 10 og imorgen er det måske 15
Avatar billede leif Seniormester
19. april 2008 - 20:11 #5
Og nej, jeg gider ikke navngive alle felter manuelt da jeg en da måske blot skal bruge 5 og den næste skal jeg bruge 15
Avatar billede showsource Seniormester
19. april 2008 - 20:14 #6
Hvis du har et felt i mysql, som er autoincrement, primary ( typisk navngivet "id" )
kan du lade hvert feltnavn hedde noegt a'la'

<input type="text" name="nummer[<?php echo $row["id"]; ?>]" value="<?php echo $row["id"]; ?>">
<input type="text" name="beskrivelse[<?php echo $row["id"]; ?>]" value="<?php echo $row["beskrivelse"]; ?>">

o.s.v

Så får du arrays at lege med ved post.

$keys = array_key($_POST["nummer"]);

foreach($keys as $nr) {
$sql = "UPDATE tabel SET beskrivelse = ".$_POST["beskrivelse[".$nr."]"]." WHERE id = $nr;
}

noget i den stil, anyway...
Avatar billede showsource Seniormester
19. april 2008 - 20:15 #7
Og så er det jo array_keys() !
Avatar billede leif Seniormester
19. april 2008 - 20:17 #8
Ja, okay, jeg fandt en lidt anden løsning kan jeg se:
<input type="text" maxlength="50" name="varenummer[]">


Og så bruge:
for($i = 0; $i < count($_POST['varenummer']); $i++) {
echo "Indsætter følgende i databasen: ".$_POST[varenummer][$i];
}
Avatar billede showsource Seniormester
19. april 2008 - 20:20 #9
jow, kan også gøres, men husk en update vil jo gerne vide hvilket row som skal ændres
Avatar billede leif Seniormester
19. april 2008 - 21:19 #10
Det skal bruges til ren INSERT så det er faktisk ikke et problem ! :-)
Avatar billede leif Seniormester
19. april 2008 - 21:49 #11
Smid et svar showsource det havde sikkert også virket !
Avatar billede showsource Seniormester
20. april 2008 - 06:10 #12
njahh, du fandt jo selv ud af det :O)
Avatar billede leif Seniormester
20. april 2008 - 09:24 #13
Okay
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