Binnen while loop GET variabelen naar extern PHP bestand sturen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

28/06/2012 12:31:26
Quote Anchor link
Hoi,

Ik heb een while loop die alle items van een array afloopt en voor elke rij een UPDATE query op m'n database uitvoert.

Ik wil echter binnen die loop ook voor elk array item een extern PHP bestand aanroepen met GET variabelen.

Zoiets dus:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
while ($row = mysql_fetch_assoc($sql)) {
//hier de code om alles in array te zetten
<blablabla>
//hier nog code om mysql query te draaien
<blablabla mysql blablabla>

//En hier dus voor elk array item het externe PHP bestand aanroepen
bestand.php?var=$row['var']&aantal=$row['aantal']
}

?>


Maar hoe roep je dat bestand precies aan? Ik ben niet te beroerd om zelf wat dingen uit te zoeken, maar ik kan niet op de goede zoektermen komen.
 
PHP hulp

PHP hulp

26/12/2024 06:49:09
 
Reshad F

Reshad F

28/06/2012 12:59:52
Quote Anchor link
je maakt nu ergens een denkfout want als je hem fetched als assoc dan krijg je in principe al een array. dus het weer in een array zetten is dubbelop

wat je kan doen is een foreach loop er in zetten om elke waarde te doorlopen en daar een actie mee uit te voeren eventueel.
 

28/06/2012 13:04:04
Quote Anchor link
De while loop werkt in principe prima, hij draait voor elke regel die in de array zit een update query, dat werkt helemaal zoals het moet.

Maar ik wil dus ook dat hij voor elke regel in de array die bestand.php aanroept, met de variabelen van die regel (dit stuk zit dan binnen een if, want hij mag het alleen aanroepen als variabele $a kleiner is dan $b.

Maar hoe doe je dat aanroepen van dat bestand.php met de juiste GET variabelen? Want dat is waar ik op vast loop, ik weet niet hoe dat aanroepen moet.
 
- SanThe -

- SanThe -

28/06/2012 13:07:03
Quote Anchor link
Wat bedoel jij precies met aanroepen?
 

28/06/2012 13:08:23
Quote Anchor link
De hierboven genoemde code staat in (bijv.) abc.php

en ik wil dus vanuit abc.php (binnen de while loop) de pagina "bestand.php" aanroepen, met de juiste GET variabelen (als ik bestand.php aanroep met 2 GET variabelen, dan gaat hij daar wat mee doen).
Gewijzigd op 28/06/2012 13:10:01 door
 
- SanThe -

- SanThe -

28/06/2012 13:10:42
Quote Anchor link
Dus je bedoelt include()?
 

28/06/2012 13:13:09
Quote Anchor link
Ik denk het dan, php include pagina zegt het volgende:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
include 'http://www.example.com/file.php?foo=1&bar=2';
?>


Zal het eens proberen
 
- SanThe -

- SanThe -

28/06/2012 13:19:46
Quote Anchor link
Dat moet dan wel zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$_GET
['foo'] = 1;
$_GET['bar'] = 2;
include('file.php');
?>
Gewijzigd op 28/06/2012 13:43:45 door - SanThe -
 
- Ariën  -
Beheerder

- Ariën -

28/06/2012 13:27:03
Quote Anchor link
Even ter aanvulling. include() verwacht een bestandsnaam, en geen URL. Er bestaat immers geen bestand wat 'http://www.example.com/file.php?foo=1&bar=2' zal heten.
 
Erwin H

Erwin H

28/06/2012 13:37:09
Quote Anchor link
Als je een extern bestand (url) wil aanroepen dan kan je dat met file_get_contents doen. Die roept de url aan en geeft de content terug in een variabele waar je dan verder mee aan de slag kan.
 
- SanThe -

- SanThe -

28/06/2012 13:43:29
Quote Anchor link
- Aar - op 28/06/2012 13:27:03:
Even ter aanvulling. include() verwacht een bestandsnaam, en geen URL. Er bestaat immers geen bestand wat 'http://www.example.com/file.php?foo=1&bar=2' zal heten.


Helemaal overheen gekeken.
 
John Cena

John Cena

28/06/2012 13:49:27
Quote Anchor link
Dat werkt wel op die manier overigens - Aar -
 
B Polak

B Polak

28/06/2012 13:56:45
Quote Anchor link
Waarom met _GET ?

Zoals hierboven staat kun je prima variabel door laten lopen in een ander bestand.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
while ($row = mysql_fetch_assoc($sql)) {

include("bestand.php");

}

?>


In bestand.php kun je gewoon de array laten op pakken.
Dit is uiteraard alleen internal.


External kan wel, maar dan raad ik je aan om in bestand.php jQuery .load() functie te gebruiken met attributes (die dan de _GET worden).
 

28/06/2012 14:14:06
Quote Anchor link
Ik (nouja een klasgenoot heeft meegeholpen) heb het nu opgelost door het externe bestand aan te passen, de code die daar wordt uitgevoerd in een functie te plaatsen. Dan het externe bestand includen, en dan in m'n 'eigen' PHP bestand de functie (met variabelen) aan te roepen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?
// code in mijn PHP bestand
bestel($var1, $var2);

// code in het externe bestand
function blablabla($var1, $var2)
    {

        //blablablabla doe iets met de variabelen blablabla

    }
?>
Gewijzigd op 28/06/2012 14:14:31 door
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.