Avatar billede jammerlab Nybegynder
20. juni 2004 - 15:22 Der er 14 kommentarer og
1 løsning

Variabel problem igen *grrr*

$i = 1;
while($i <= $test) {

echo $s1;

$r = $ . s . $i;
   
$i++;

mysql_query("insert into vote_data (question,antal) values ('$r','0')")or die (mysql_error());

}

Det er min $r der er problemer... jeg skal havde smidt $ foran så jeg for en variabel der hedder $s1 $s2 osv. Jeg har prøvet mig med chr(36) men så smider den bare $s1 ind i databasen istedet for den rigtige værdi som kommer fra et input felt med navnet s1. Hvordan kringler jeg den?
Avatar billede jaw Nybegynder
20. juni 2004 - 15:25 #1
$r = $s . $i;
Avatar billede jammerlab Nybegynder
20. juni 2004 - 15:28 #2
Går heller ikke... for så smider den bare 1, 2, 3 osv ind... da den ikke har nogen $s sat ;)
Avatar billede stalle Nybegynder
20. juni 2004 - 15:34 #3
jeg er vist ikke med.

Du vil sætte $s til et eller andet, og så smide det foran $i ?
Avatar billede stalle Nybegynder
20. juni 2004 - 15:35 #4
altså:
$s = "Kasse";

Således at det bliver til "Kasse1", Kasse2, etc?
Avatar billede jammerlab Nybegynder
20. juni 2004 - 15:36 #5
nop... det er fordi jeg har et input felter alt efter hvad brugeren vælger i en select form. Disse felter har et forskelligt name s1 s2 s3 osv. Jeg finder ud af hvor mange felter der er valgt med variablen $test. $test styrer så hvor mange gange min while loop bliver kørt. Lad os sige han har valgt 3 felter. Så skal jeg kører insert query 3 gange. Da skal den bruge variablerne $s1 $s2 $s3 ... og det er såmen bare det jeg prøver på :)
Avatar billede jaw Nybegynder
20. juni 2004 - 15:36 #6
Det må da så være:
$r = $s . "$i";
Avatar billede jaw Nybegynder
20. juni 2004 - 15:37 #7
Baah, min fejl igen... Læste forkert afsender af kommentaren :/
Avatar billede jammerlab Nybegynder
20. juni 2004 - 15:39 #8
hehe
Avatar billede jaw Nybegynder
20. juni 2004 - 15:42 #9
men hvis du nu kaldte dine forms name="s[]" så kunne du hente det som array med $s[$i] - men det ved jeg ikke om det duer?
Avatar billede jammerlab Nybegynder
20. juni 2004 - 15:44 #10
lets try... 2.sek
Avatar billede stalle Nybegynder
20. juni 2004 - 15:44 #11
Jeg var lige ved at lede efter noget, hvor jeg har lavet noget ligende, men det lykkedes ikke for godt.
Men der har jeg lavet det på samme måde som jaw beskriver.
Og jeg vil mene at det er den nemmeste måde og gøre det på
Avatar billede jaw Nybegynder
20. juni 2004 - 15:45 #12
Altså sådan her:

$i = 0;
while($s[$i] != "") {
  echo $s[$i];
  $r = $s[$i];
  mysql_query("insert into vote_data (question,antal) values ('$r','0')")or die (mysql_error());
  $i++;
}
Avatar billede jammerlab Nybegynder
20. juni 2004 - 15:47 #13
Ja det fungere jo fint... mere kan jeg vidst ikke forlange :) Smid et svar- tak ;)
Avatar billede jaw Nybegynder
20. juni 2004 - 15:49 #14
Det var så lidt :)
Avatar billede fangel Nybegynder
20. juni 2004 - 16:03 #15
ellers skal du bruge variable variabler...

$var1 = "tralala";
$var2 = "lullaby";
$var3 = "2b|!2b";
$for($i=1;$i<=3;$i++){
  echo ${'var' . $i};
}

udskriver $var1 - $var3

Morten
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