[php] foreach/query foutje

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik ben bezig met een formulier om etiketten te maken waarbij ik kan kiezen op welk etiket de gegevens moet komen. als ik in het formulier de etiketten aanvink, en dan post, dan worden de goede etiketten gebruikt.

in de het etiket moet hij de gegevens uitlezen uit de database van een adres. Bij 1 etiket gaat het goed, bij meerdere niet. als ik 5 etiketten aanvink, dan komen er 5 etiketten met dezelfde gegevens in beeld. ik heb al enkele constructies bedacht, maar volgens mij zie ik wat over het hoofd.

is er iemand die me wellicht behulpzaam kan en wil zijn? onderstaande levert bij aantal = 5 5x dezelfde gegevens op, terwijl ik 5 verschillende wil zien..


PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// ik open eerst een template file, die ik explode naar $inhoud
// hierin zitten waarden zoals  {ORDERNR_1} en {NAAM_1} die worden vervangen

foreach ($HTTP_POST_VARS['etiket'] as $idx => $nr) {

// $aantal komt van een query die het aantal orders bepaald
$etiket = mysql_query("SELECT * FROM orders WHERE printfactuur ='2' LIMIT $aantal");
for($b=0; $b < mysql_numrows($etiket); $b++) {

// hij laat ze ze goed onder elkaar zien op het scherm
//echo"order_$idx = ". mysql_result($etiket, $b, 'ordernummer')."<br>";
        
// vervang hier de gegevens in een template file
$inhoud = str_replace ("{ORDERNR_$idx}",  "
". mysql_result($etiket, $b, 'ordernummer')." )."", $inhoud);
}   
}

[ Voor 13% gewijzigd door Verwijderd op 17-03-2003 15:18 ]


Acties:
  • 0 Henk 'm!

  • CyberSnooP
  • Registratie: Augustus 2000
  • Laatst online: 16-08 06:44

CyberSnooP

^^^^ schrijft --->

Volgens mij mag je helemaal niet aannemen dat PHP variabelen die binnenkomen in een HTTP-POST request automatisch omzet in arrays. Ik geloof zelfs dat de [ en ] tekens niet waren toegestaan in de namen voor velden van een HTML-Form.

Enfin: Zoek een ander formaat voor je namen (desnoods etiket1, etiket2..) en zet die in een apart loopje om in een array en verwerk dan die pas.

|_____vakje______|


Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

[nohtml]
CyberSnooP:
Volgens mij mag je helemaal niet aannemen dat PHP variabelen die binnenkomen in een HTTP-POST request automatisch omzet in arrays. Ik geloof zelfs dat de [ en ] tekens niet waren toegestaan in de namen voor velden van een HTML-Form.
:? Volgens mij is daar helemaal niets mis mee, hoor ...

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

  • r0bert
  • Registratie: September 2001
  • Laatst online: 30-07 02:32
mysql_num_rows ipv mysql_numrows

Acties:
  • 0 Henk 'm!

  • CyberSnooP
  • Registratie: Augustus 2000
  • Laatst online: 16-08 06:44

CyberSnooP

^^^^ schrijft --->

drm schreef op 17 maart 2003 @ 15:50:
:? Volgens mij is daar helemaal niets mis mee, hoor ...
De PHP Manual
PHP also understands arrays in the context of form variables (see the related faq). You may, for example, group related variables together, or use this feature to retrieve values from a multiple select input.
Oftewel.. drm heeft gelijk en ik hou m'n mond wel weer (schaam schaam).

Ik heb leren PHP-en met PHP3, die snaptte dat niet altijd correct en het werd in tutorials ook afgeraden, maar het blijkt maar weer dat het tegenwoord BS is

|_____vakje______|


Acties:
  • 0 Henk 'm!

  • chris
  • Registratie: September 2001
  • Laatst online: 11-03-2022
hmz zou je van $inhoud= niet maken $inhoud.= want nu gebeurt er niets alleen wordt elke keer $inhoud overschreven. Probeer anders eerst eens in woorden op te schrijven wat je wil....

Acties:
  • 0 Henk 'm!

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
/dev/null schreef op 17 March 2003 @ 17:13:
hmz zou je van $inhoud= niet maken $inhoud.= want nu gebeurt er niets alleen wordt elke keer $inhoud overschreven. Probeer anders eerst eens in woorden op te schrijven wat je wil....

Volgens mij klopt dat wel hoor. $inhoud wordt gewoon als een lvalue gebruikt van een str_replace( )

phppower Je quotes staan ook niet goed op line 16. Zoals je nu kan zien staat er 1 quote te veel waardoor hij $inhoud als string erin parsed
Pagina: 1