PDF à partir données SQL posant pb sur php 5.4.35

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : PDF à partir données SQL posant pb sur php 5.4.35

Re: PDF à partir données SQL posant pb sur php 5.4.35

par montjoye » 15 janv. 2015, 19:30

Merci bcp pour ces messages, clairs et qui prennent du temps à rédiger !
Les choses avancent, en suivant toutes vos remarques, j'ai maintenant qq chose qui s'affiche, un message d'erreur (en pièce jointe).
La page php qui doit générer le pdf est appelée depuis le traitement des résultats d'un formulaire, via un composant (QuickForm) installé sur Joomla.
Vous m'avez précisez d'activer le report des erreurs, mais comment le faire ? Où dois-je placer error_reporting() ?
Merci Beaucoup !

Re: PDF à partir données SQL posant pb sur php 5.4.35

par sirakawa » 08 janv. 2015, 20:55

Si tu fais ce que dit @rthur tu verras des messages d'erreur comme celui-ci:
Fatal error: Call-time pass-by-reference has been removed in /var/www/html/pdfreport.php on line 205
Or fatal Error arrête l'execution du script.
En fait il y a d'autres lignes (182 186 204 221 336 353 503 657) semblables à celle-ci:
WordWrapText(&$text, $info['value'], $this->pdf); à corriger ainsi:
WordWrapText($text, $info['value'], $this->pdf);

Explication sommaire:
PHP passe les variables aux fonctions soit par valeur soit par adresse (par référence):
par reference on procède ainsi: http://php.net/manual/fr/language.references.pass.php
<?php
function bidule(&$var) {
  $var++;
}
$a=5;
bidule ($a);
// $a vaut 6 maintenant
?>
Et la variable assée par référence revient modifiée par la fonction.
C'est ce que faisait WordWrapText avec en plus une façon différente d'écrire:
<?php
function bidule($var)   { // ou (&$var), je ne me souviens plus
  $var++;
}
$a=5;
bidule (&$a);
// $a vaut 6 maintenant
?>
Le wordwrap actuel passe par valeur et retourne une chaîne qu'il faut affecter.
*
Cec i dit, après modifs, j'ai une autre erreur:
Restricted accessqui provient de la ligne 2 montrant que du point de vue de php tout va bien mais que ce script doit être appelé à partir d'une page où _JEXEC est défini, ce que je contourne en ajoutant avant la ligne 2 celle-ci:
define('_JEXEC', 1);
pour apprendre qu'il me manque JFACTORY... qui permet l'accès à la base de données... mais ça ne doit pas etre insurmontable.

Re: PDF à partir données SQL posant pb sur php 5.4.35

par @rthur » 08 janv. 2015, 20:14

Merci pour ces infos, malheureusement, toujours page blanche...
Si tu as une page blanche c'est qu'il y a une erreur, donc active les messages d'erreur (cf error_reporting() ) et regarde dans les logs PHP.
Tu as forcément un message d'erreur dedans.

Re: PDF à partir données SQL posant pb sur php 5.4.35

par montjoye » 08 janv. 2015, 16:33

Merci pour ces infos, malheureusement, toujours page blanche...

Re: PDF à partir données SQL posant pb sur php 5.4.35

par sirakawa » 08 janv. 2015, 16:07

ligne 90
$db =& JFactory::getDBO();
essayer
$db = JFactory::getDBO();
et 123
$db->setQuery("SELECT #__comprofiler.*,#__users.name FROM #__comprofiler LEFT JOIN #__users
ON #__users.id=#__comprofiler.user_id WHERE user_id in (".$this->_models["quickdetails"]->see.")");
$values = $db->loadAssocList();
ajouter
var_dump($values);

Re: PDF à partir données SQL posant pb sur php 5.4.35

par tof73 » 08 janv. 2015, 15:22

activer l'affichage des erreurs ou regarder dans les logs si disponible
si ce n'est pas possible, mettre quasi tout le code en commentaire et ajouter petit à petit du code pour trouver d'où vient le problème.

Re: PDF à partir données SQL posant pb sur php 5.4.35

par montjoye » 08 janv. 2015, 15:05

Bonjour, en fait, je n'ai rien, une page blanche et aucun message d'erreur.

Re: PDF à partir données SQL posant pb sur php 5.4.35

par sirakawa » 08 janv. 2015, 13:44

@rthur m'a doublé pendant que je lisais le contenu du zip.

Re: PDF à partir données SQL posant pb sur php 5.4.35

par @rthur » 08 janv. 2015, 13:35

Bonjour,

Il faudrait que tu sois plus précis que "ça ne fonctionne plus".
Quel est le problème ?
Quels sont les messages d'erreurs ? as-tu regardé dans les logs ?

PDF à partir données SQL posant pb sur php 5.4.35

par montjoye » 08 janv. 2015, 12:19

Bonjour, j'avais un fichier pdfreport.php (ci-joint) qui fonctionnait avec une version moins récente de php, ne fonctionnant plus sous php 5.4.35 Celui-ci a pour but de créer un fichier PDF à partir de données sql.
Quelqu'un aurait une idée ? Je suis assez novice...