PDA

View Full Version : [PHP] Petit prob d'echo !


bastien
7 octobre 2004, 00h17
Je continue dans mon apprentissage du php !

J'ai un petit prob dans une fonction echo :

echo "<table width=\"...trong> - ".
$voir="php" ;
include("viewonline.php"); echo"
</div></td>
<td width=\"91\" ...";

Le script permets d'afficher le nombre de connectés ! La fonction marche mais ça me rajoute "php" juste devant le nombre de connectés !

Ensuite toujours, dans l'echo, je ne sais pas comment intégrer ça :
<?php echo htmlspecialchars($q); ?>

J'ai mis echo "<table width=\"...t\" value="; echo htmlspecialchars($q); " na..."; mais ça bug la page !

J'attends votre coup de pouce :)

Merci d'avance

Magi-X
7 octobre 2004, 06h39
Je continue dans mon apprentissage du php !

J'ai un petit prob dans une fonction echo :

echo "<table width=\"...trong> - ".
$voir="php" ;
include("viewonline.php"); echo"
</div></td>
<td width=\"91\" ...";

Le script permets d'afficher le nombre de connectés ! La fonction marche mais ça me rajoute "php" juste devant le nombre de connectés !

pourquoi mettre $voir=php ??? puis c'est logique qu'il montre php car tu lui demande ...

Ensuite toujours, dans l'echo, je ne sais pas comment intégrer ça :
<?php echo htmlspecialchars($q); ?>

J'ai mis echo "<table width=\"...t\" value="; echo htmlspecialchars($q); " na..."; mais ça bug la page !

ca devrait etre bon apart ton "na ..." deriere mais que veux tu dire par "ca bug la page" qu'est-ce qu'il ce passe ...[/QUOTE]

bastien
7 octobre 2004, 08h07
pourquoi mettre $voir=php ??? puis c'est logique qu'il montre php car tu lui demande ...

C'est le script qui est comme ça !
si je ne mets pas ça, le nombre de connectés ne s'affiche pas !
Et le $voir=php permets de choisir le type d'affichage du compteur : php ou js

Voici une partie du viewonline.php :

if ($nbreonline==1){$afficher="$nbreonline connecté";}
if ($nbreonline>1){$afficher="$nbreonline connectés";}
if ($voir=="js"){
print "document.write('".$afficher."');";
}
if ($voir=="php"){
echo("$afficher");
}
if ($voir=="no"){
}
?>

ca devrait etre bon apart ton "na ..." deriere mais que veux tu dire par "ca bug la page" qu'est-ce qu'il ce passe ...

Lol ... le na... c'est parce que j'ai raccourci la partie !
Sinon voici comment ça bug :

http://img47.exs.cx/img47/3493/Image86.png

Et du coup, ça me décale tout ce qu'il y a après ...

Benjy
7 octobre 2004, 08h24
$voir = 'php';
?>
<table width="...trong> - <?=include('viewonline.php')?></div></td>
<td width="91" ...
Ici, selon ce que te retourne viewonline.php, tu as peut-être besoin de <?php include('viewonline.php'); ?> au lieu de <?=include('viewonline.php')?>.

<table width="...t" value="<?=htmlspecialchars($q)?>" na...

NB : <?= équivaut à <?php echo ;)

Matt
7 octobre 2004, 08h27
Bon alors déjà, là y a un truc qui me parait louche :
echo "<table width=\"...trong> - ".
$voir="php" ;
include("viewonline.php"); echo"
</div></td>
<td width=\"91\" ...";
La première ligne se termine par un point, qui est en PHP l'opérateur de concaténation de chaîne.
Donc à priori, tu concatènes la chaîne contentant le code HTML, avec la chaîne résultat de l'affectation de la variable $voir (une affectaion réussie retourne la valeur affectée, donc ici, la chaîne "php").
Remplace le point par un point-virgule et ça devrait aller mieux.

Pour le deuxième problème, pourrait tu me donner le contenu de la variable $q et le début du code après le htmlspecialchar ?

bastien
7 octobre 2004, 08h34
Merci Matt ! La première solution marche ....

Quand à l'autre, c'est un script php pour chercher avec google (google_api). La variable $q est envoyée par un form :
<form action="index.php" method="get">
<input type="hidden" value="recherche" name="page" />
<input size="35" type="text" value="<?php echo ($q); ?>" name="q" / class="rech">
<input type="submit" value="Lancer la recherche" />
</form>

Quand au htmlspecialchar c'est dans les fichiers php du sxcript ... je ne sais pas trop ou !

Mais bon, sinon c'est pas grave, je vais essayer de me débrouiller autrement pour le 2d, merci :)