À l'aide d'une variable en dehors de la boucle while (champ d'application)

Petit problème concernant le champ d'application en PHP, je n'arrive pas à appeler la variable $par rapport à l'extérieur de la boucle while. J'ai essayé diverses choses, y compris return. Cela ne fonctionne pas, les deux seules fonctions qui travaillent ici sont si je echo la variable $report l'intérieur de la boucle, ou si je print. Que je ne veux pas le faire, même si cela résout le problème, mais je ne veux pas aléatoire charabia sur l'écran de l'utilisateur.

J'ai été en regardant autour pour les 15 dernières minutes, et je n'ai pas vu de problèmes tout à fait comme celui-ci ici.

Toute aide serait appréciée.

<?
require "functions2.php";
require "members.php";
$query = "SELECT MAX(DOCid) as prevDOCid from reports";
$result = mysql_query($query);

while ($row = mysql_fetch_array($result)) {
    $prevDOCid = $row[prevDOCid];

$thisDOCid = $prevDOCid+1;
$report = "a"."b".$thisDOCid;


}
echo $report;
?>
si vous êtes echo ing $par rapport à l'intérieur de la boucle while , avez-vous des op?
PHP n'est pas vraiment un concept de portée, comme, par exemple, de Java où ce serait un problème. Si $report n'est pas déclaré au moment où vous arrivez à la echo déclaration, je devine que PHP ne pénètre jamais dans le while boucle en premier lieu.
Hmm, eh bien, il ne fonctionne pas. Je suis évidemment pas tout simplement essayer d'echo $rapport, je suis en train de poster le code de cette façon pour des raisons de simplicité. La seule manière que je peux utiliser la variable en dehors de la boucle est si je fais écho à la première.
PS: Vous avez vraiment ne devrait pas être à l'aide de $row[prevDOCid]. Utilisez des guillemets: $row['prevDOCid']. Il pourrait fonctionner, mais faux.
Il donne undefined variable, c'est correct.

OriginalL'auteur Ryan Ward | 2011-09-07