Hallo,

In navolging op een eerdere post aan dit forum (zie http://www.phphulp.nl/forum/showtopic.php?cat=12&id=24771&page=)
Kom ik er net achter dat het probleem mogelijk wordt veroorzaakt doordat een variabele die ik eerder op een pagina zet, niet kan worden weergegeven.
Ik zal de situatie kost schetsen:

Mijn pagina bestaat uit een aantal .php pagina's die ik met "include" oproep gevolgd door wat code.
In een deel, dat als eerste wordt aangeroepen produceer ik een lijst met opties waaruit gekozen kan worden:

<?
while ($row = mysql_fetch_array($result))
{
extract($row);
echo "<p>";
echo "$coun_printname,
<a href='factbookdata.php?carrierchoice=$carr_name'>
<strong>
$carr_name
</strong>
</a><br></p>";
}
?>

Vervolgens roep in de pagina zelf de variabele op om weer te geven:

<?
echo test ;
echo "$carrierchoice";
?>

De pagina levert op mijn localhost gewoon de gekozen variabele. Op de Server van m'n provider niet.

Ra ra, hoe kan dit?
In je eerste stukje script zie ik geen $carrierchoice.
Hallo SanThe,

Volgens mij benoem ik die met:

<a href='factbookdata.php?carrierchoice=$carr_name'>

Dit werkt in ieder geval op de lokale server. Zou ik hier:

<a href='factbookdata.php?$carrierchoice=$carr_name'>

van moeten maken?
<a href='factbookdata.php?carrierchoice=$carr_name'>

Die var is op te vragen met $_GET['carrierchoice'].
Zie superglobals.
Ik zou je var buiten quotes houden

<?php

echo "<p>";
echo $coun_printname.",
<a href='factbookdata.php?carrierchoice=$carr_name'>
<strong>
$carr_name
</strong>
</a><br></p>";
}


?>
Hallo Jurgen,

De variabele $coun_printname gaat goed. Hij geeft 'm goed weer.
Het gaat om de te bepalen variabele $carrierchoice.

Deze wordt in het tweede scriptje dat ik hierboven afbeeldde niet weergegeven
SanThe schreef op 16.11.2006 09:41
<a href='factbookdata.php?carrierchoice=$carr_name'>

Die var is op te vragen met $_GET['carrierchoice'].
Zie superglobals.
Heb je dit al geprobeerd ondertussen?
Ja dat zie ik Arthur maar het is netter om een variablen buiten quotes te houden
Duidelijk een kwestie van globalen/locale variabelen.

Kennelijk worden om beveiligings redenen (terecht) POST en GET variabelen niet omgezet naar superglobals (waar Kasper ook over spreekt).

Je kunt deze variabelen niet zomaar aanspreken op hun naam, maar je moet ze zelf opvragen uit de $_GET of $_POST array.

<?php

$carrierchoice = urldecode($_GET['carrierchoice']);

?>
Kasper schreef op 16.11.2006 11:06
[quote='SanThe schreef op 16.11.2006 09:41']<a href='factbookdata.php?carrierchoice=$carr_name'>

Die var is op te vragen met $_GET['carrierchoice'].
Zie superglobals.
Heb je dit al geprobeerd ondertussen?[/quote]

Ik zal dat vanavond pas kunnen controleren. De baas staat geen FTP toe....
Pholeron schreef op 16.11.2006 12:28
Duidelijk een kwestie van globalen/locale variabelen.

Kennelijk worden om beveiligings redenen (terecht) POST en GET variabelen niet omgezet naar superglobals (waar Kasper ook over spreekt).

Je kunt deze variabelen niet zomaar aanspreken op hun naam, maar je moet ze zelf opvragen uit de $_GET of $_POST array.

<?php

$carrierchoice = urldecode($_GET['carrierchoice']);

?>


Ik heb even geen tijd gehad verder te gaan aan de site. Nu eindelijk wel en de suggestie heeft effect gehad. Alles werkt !

Bedankt,

Arthur

Reageren