Multiplier une variable plxShow, impossible?
Nokino
Member
dans Entraide et S.A.T
Salut,
ça fais longtemps que je n'ai pas eu de soucis avec Pluxml mais la, j'arrive à bout.
Le titre est effectivement à prendre au pied de la lettre, je vous explique mon problème.
Je fais des essais avec Pluxml et j'aimerais bien multiplier $a (un nombre donné: 915) qui correspond à la largeur d'un div, par $b (la variable $plxShow->nbAllArt();).
Le but serait d'opérer la multiplication pour obtenir un div d'une largeur égale à 915 x le nombre d'article en tout. Cela dans une balise de style css embarquée dans le header.php.
Le code est le suivant:
Le soucis c'est que $plxShow->nbAllArt(); ne veut pas subir la multiplication...
( je lui ai retirer les termes "no_article", "article", "articles" associés pour avoir seulement le nombre )
dès que je le remplace par 1,2,3... ça fonctionne!
Mais la je suis assez désespérer.
Au rendu le code source affiche ça. Seulement le /*commentaire*/ devrait être vide et le width devrait être > 0...
Si quelqu'un sait comment m'aider, ou a une idée,
je suis preneur!
ça fais longtemps que je n'ai pas eu de soucis avec Pluxml mais la, j'arrive à bout.
Le titre est effectivement à prendre au pied de la lettre, je vous explique mon problème.
Je fais des essais avec Pluxml et j'aimerais bien multiplier $a (un nombre donné: 915) qui correspond à la largeur d'un div, par $b (la variable $plxShow->nbAllArt();).
Le but serait d'opérer la multiplication pour obtenir un div d'une largeur égale à 915 x le nombre d'article en tout. Cela dans une balise de style css embarquée dans le header.php.
Le code est le suivant:
<?php
echo("<style type=\"text/css\">
#bloc{
/*");
$a=915;
$b=$plxShow->nbAllArt();
$total=$a*$b;
echo("*/
width:".$total."px;
margin: 0;
padding: 0;
}
</style>"); ?>
Le soucis c'est que $plxShow->nbAllArt(); ne veut pas subir la multiplication...
( je lui ai retirer les termes "no_article", "article", "articles" associés pour avoir seulement le nombre )
dès que je le remplace par 1,2,3... ça fonctionne!
Mais la je suis assez désespérer.
Au rendu le code source affiche ça. Seulement le /*commentaire*/ devrait être vide et le width devrait être > 0...
<style type="text/css">
#bloc{
/*3*/
width:0px;
margin: 0;
padding: 0;
}
</style>"); ?>
Si quelqu'un sait comment m'aider, ou a une idée,
je suis preneur!
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
J'ai un string de l'array
$plxShow->nbAllArt() ne renvoie aucune valeur, il affiche la valeur avec une echo.
Donc aucune opération arithmétique possible avec cette instruction.
ps: pour info cette fonction sera supprimée avec la 5.1.6
Consultant PluXml
Ancien responsable et développeur de PluXml (2010 à 2018)
merci beaucoup pour vos réponses.
@fliflip
en ajoutant int() cela indique une fatal error: fonction indéfinie.
@Stéphane
Cette fonction va être supprimée à jamais ou bien remplacée? Car c'est bien dommage, en d'autres circonstances elle est bien pratique!
Et en attendant est ce que vous savez comment je peux récupérer uniquement la valeur qu'elle affiche, une à qui je pourrais faire subir des multiplications?
ob_get_contents();
S'il te plait, est ce que tu peux m'expliquer un peu qu'est ce qui se passe pour que cela fonctionne et pourquoi "c'est très moche?"
.
Tant qu' on n'utilise pas ob_end_(clean ou flush) le tampon n'est pas fermé et aucune donnée ne s'affiche.
Je t'ai d'ailleurs dit une bêtise : il vaudrait mieux utiliser ob_end_clean() à la place de ob_end_flush() car tu ne l'utilises qu'une fois et qu'il ne sert à rien de conserver le tampon de sortie (mémoire utilisée pour rien). Le fait d'utiliser ob_end_clean() ne supprimera que le tampon et n'initialisera pas la valeur $b qui contient le nombre de tes articles.
Ici, comme $plxShow->nbAllArt() affiche une valeur avec echo, le fait de la récupérer via ob_get_contents() la fait aussi s'afficher (à cause du echo de $plxShow). C'est pour cette raison que j'ai mis les balises de commentaires (<!-- et -->) pour que le navigateur ne l'affiche pas et que je dis que c'est très moche.
Je ne sais pas si mes explications sont assez claires ?
Ça m'a bien aidé!
Par contre j'aurais bien aimé savoir pour la fonction $plxShow->nbAllArt() si elle allait être supprimée définitivement ou bien remplacée?
Car elle est sacrement utile en certains cas...
Consultant PluXml
Ancien responsable et développeur de PluXml (2010 à 2018)
Seulement est-ce qu'il ne serait pas mieux de la corriger afin qu'elle retourne des résultats justes ou plus justes.
Ce serait difficile?