Récupération des données
Résolu/FerméLaChaux78 Messages postés 577 Date d'inscription lundi 25 juillet 2016 Statut Membre Dernière intervention 3 novembre 2024 - 17 mars 2023 à 15:43
- Récupération des données
- Recuperation de données - Guide
- Excel validation des données liste - Guide
- Comment récupérer des messages supprimés sur whatsapp - Guide
- Reinstaller windows sans perte de données - Guide
- Convertisseur récupération de texte - Guide
29 réponses
10 mars 2023 à 21:18
bonjour,
peux-tu partager du texte, et pas des images?
10 mars 2023 à 21:51
Excuse moi mais c'est sur ma liste déroulante donc je ne peux pas faire une sélection pour du texte! ou alors je ne sais pas comment?
Modifié le 11 mars 2023 à 10:55
Tu peux sans doute récupérer du texte dans la source HTML de ta page.
11 mars 2023 à 07:40
Bonjiour j'ai changé l'emplacement du var_dump
C:\wamp64\www\gestion\libs\class.liste.php:258:int 14 C:\wamp64\www\gestion\libs\class.liste.php:258:string 'idaut,nom,prenom' (length=16)
par contre je ne comprends pas pourquoi vous ne souhaitez pas de capture image?
Je vous remercie.
11 mars 2023 à 11:00
le var_dump te permet-il de déterminer ce qui ne fonctionne pas?
11 mars 2023 à 15:47
Bonjour, non en fait le var_dump ne m'en dis pas plus malheureusement. Je pense que c'est la ligne 38 qui pose problème. J'ai modifié cette ligne et voilà ce que cela donne!
$thisrec = !empty($donnees->$champs) && is_array($donnees->$champs) && $indice == $donnees->$champs[$idnum] ? 1 : 0 ;
Notice: Array to string conversion in C:\wamp64\www\gestion\libs\class.liste.php on line 38
11 mars 2023 à 17:09
Que contenait la ligne 38?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question11 mars 2023 à 17:49
Merci pour ton aide.
$thisrec = !empty($donnees->$champs) && is_array($donnees->$champs) && $indice == $donnees->$champs[$idnum] ? 1 : 0 ; var_dump($indice, $donnees->$champs);
C:\wamp64\www\gestion\libs\class.liste.php:226:int 14 C:\wamp64\www\gestion\libs\class.liste.php:226:null
11 mars 2023 à 17:57
Je ne vois pas ce qui a changé dans la ligne 38.
Tu as le message d'avertissement, "notice", suivi de l'affichage par le var_dump()?
11 mars 2023 à 18:24
Excuse moi je ne comprends pas ? que veux tu que je fasses?
11 mars 2023 à 19:45
Tu as modifié la ligne 38. Tu as partagé en #6 la nouvelle instruction.
En #7, je t'ai demandé ce que cette ligne contenait avant le changement.
En #8, tu partages la même chose qu'en #6, donc je me demande ce qui as changé.
Je me demande aussi si le message d'avertissement "Notice..." précède l'affichage que tu montres en #8. Comme tu montres chaque fois des petits morceaux, pas évident de se faire une vue d'ensemble.
11 mars 2023 à 20:45
Oui en effet j'ai été brouillon, excuse moi! Je recommence du départ. Ci dessous la ligne comme le montre la fonction du début du post que je suppose qui pose problème.
$thisrec = !empty($this->champs) && is_array($this->champs) && $indice == $this->champs[$idnum] ? 1 : 0 ;
avec l'affichage du var_dump
var_dump($indice, $this->champs); C:\wamp64\www\gestion\libs\class.liste.php:258:int 14 C:\wamp64\www\gestion\libs\class.liste.php:258:string 'idaut,nom,prenom' (length=16)
Par contre j'ai aucune erreur ni notice ni aucune autre.
11 mars 2023 à 21:12
En réalité, quel est le problème?
Ton programme fait autre chose que ce que tu souhaites?
Que fait-il? Que souhaites-tu?
11 mars 2023 à 21:14
Et donc, l'avertissement "Notice ...", il vient d'où, il est parti où?
11 mars 2023 à 22:14
Alors en fait j'ai des listes déroulantes qui n'affichent pas les valeurs souhaitées. Comme je l'ai précisé au début du post cette fonction sert à récupérer les données appropriée pour écrire les listes déroulantes.
L'avertissement 'Notice' est venue lorsque j'ai modifié ma ligne qui je pense pose problème. Au lieu d'écrire "$this" je l'ai remplacé par '$donnees' et oui j'essaie de trouver le problème mais sans trop savoir.
Au lieu de "$this->champs" j'ai essayé "$donnees->$champs" dans ce cas il y a une erreur 'Notice'
$thisrec = !empty($donnees->$champs) && is_array($donnees->$champs) && $indice == $donnees->$champs[$idnum] ? 1 : 0 ;
Avec l'erreur 'Notice' et l'affichage du var_dump
Notice: Array to string conversion in C:\wamp64\www\gestion\libs\class.liste.php on line 38 C:\wamp64\www\gestion\libs\class.liste.php:39:int 14 C:\wamp64\www\gestion\libs\class.liste.php:39:null
Merci j'espère que c'est assez explicite pour que tu puisses me sortir de ce mauvais pas.
12 mars 2023 à 07:59
Tu as écrit une nouvelle fonction pour récupérer les données appropriée pour écrire les listes déroulantes?
Que retourne cette fonction?
12 mars 2023 à 08:15
Bonjour non je n'ai pas écrit de nouvelle fonction! qu'est ce qui te fait dire cela?
12 mars 2023 à 08:43
Comme tu n'expliques rien, j'essaie de deviner pourquoi tu modifies ton code et ce qui a causé l'apparition de ces erreurs.
12 mars 2023 à 09:39
Ha zut je suis désolé je pensais avoir bien expliqué sur mon post 15 C'est juste une modif sur une ligne
"L'avertissement 'Notice' est venue lorsque j'ai modifié ma ligne qui je pense pose problème. Au lieu d'écrire "$this" je l'ai remplacé par '$donnees' et oui j'essaie de trouver le problème mais sans trop savoir"
12 mars 2023 à 11:46
Et tout fonctionne bien si tu ne modifies pas cette ligne?
12 mars 2023 à 12:04
hé non sinon j'aurai rien essayé de modifier, si tout fonctionnerai bien!
12 mars 2023 à 12:05
Qu'est ce qui ne fonctionne pas?
12 mars 2023 à 17:31
je cherche à récupérer les données appropriée pour écrire les listes déroulantes.
Ceux qui ne fonctionne pas c'est que je ne récupére pas les valeurs souhaité de ma liste déroulante en l’occurrence dans cette exemple le nom de l'auteur idaut 14.
Revoir ma fonction au début de mes messages.
voilà ce que ça donne.
var_dump($indice, $this->champs); C:\wamp64\www\gestion\libs\class.liste.php:258:int 14 C:\wamp64\www\gestion\libs\class.liste.php:258:string 'idaut,nom,prenom' (length=16)
j'ai fait également un var_dump(debug_backtrace()) et tout semble ok
C:\wamp64\www\gestion\libs\class.liste.php:198: array (size=1) 0 => array (size=7) 'file' => string 'C:\wamp64\www\gestion\sais_oeuvre.php' (length=37) 'line' => int 290 'function' => string 'write' (length=5) 'class' => string 'liste' (length=5) 'object' => object(liste)[8] public 'sql' => string 'SELECT idaut,nom,prenom FROM cdc_auteurs ORDER BY nom,prenom ' (length=63) public 'champs' => string 'idaut,nom,prenom' (length=16) public 'texte' => string '-- Auteurs --' (length=13) public 'ctrlname' => string '' (length=0) public 'style' => string '' (length=0) public 'onchange' => string '' (length=0) public 'tronque' => int 0 public 'option' => string '' (length=0) public 'slimit' => string '' (length=0) public 'limit' => string '' (length=0) public 'nbrecs' => int 204 private 'objet' => string 'libs/auteurs' (length=12) 'type' => string '->' (length=2) 'args' => array (size=1) 0 => string '14' (length=2)
13 mars 2023 à 07:31
Bonjour,
Je vous envoie une capture uniquement pour vous faire voir ce qu'il ne va pas. Vous allez me dire encore une image mais c'est simplement pour vous montrer le soucis. En effet sur mon autre PC tout fonctionne très bien parce que j'ai pas la même version de PHP. Vous voyez le premier input c'est l'oeuvre et le second c'est l'auteur.
Voici le var_dump(debug_backtrace()); et var_dump($indice, $this->champs); avec mon problème
sur le var_dump on voit apparaitre qu'il y a le lien relatif je suppose que c'est cela qui pose problème car sur la première capture il n'apparait pas.
C:\wamp64\www\gestion\libs\class.liste.php:258:string '14' (length=2) C:\wamp64\www\gestion\libs\class.liste.php:258:string 'idaut,nom,prenom' (length=16)
Peut-être avez-vous une idée de ce problème?
C'est gentil à vous merci.
13 mars 2023 à 11:37
Je ne vois pas de lien relatif.
Si l'image est prise dans un navigateur, il est préférable de comparer et partager la source HTML de la page.
13 mars 2023 à 18:15
Bonjour une dernière chose après je démissionne...
Lorsque je fait mon var_dump(debug_backtrace());
if(!empty($this->sql)) { $req = executeQuery($this->sql); $resultat = $req->fetchAll(); var_dump(debug_backtrace()); } else { echo "Erreur ! La requête est vide !"; $this->debug(); }
résultat du var_dump(debug_backtrace());
C:\wamp64\www\gestion\libs\class.liste.php:198: array (size=1) 0 => array (size=7) 'file' => string 'C:\wamp64\www\gestion\sais_oeuvre.php' (length=37) 'line' => int 290 'function' => string 'write' (length=5) 'class' => string 'liste' (length=5) 'object' => object(liste)[8] public 'sql' => string 'SELECT idaut,nom,prenom FROM cdc_auteurs ORDER BY nom,prenom ' (length=63) public 'champs' => string 'idaut,nom,prenom' (length=16) public 'texte' => string '-- Auteurs --' (length=13) public 'ctrlname' => string '' (length=0) public 'style' => string '' (length=0) public 'onchange' => string '' (length=0) public 'tronque' => int 0 public 'option' => string '' (length=0) public 'slimit' => string '' (length=0) public 'limit' => string '' (length=0) public 'nbrecs' => int 204 private 'objet' => string 'libs/auteurs' (length=12) 'type' => string '->' (length=2) 'args' => array (size=1) 0 => string '14' (length=2)
Pourquoi il y a ce lien au début également ce n'est pas normal non ??
C:\wamp64\www\gestion\libs\class.liste.php:198:
Merci.
13 mars 2023 à 18:49
Le "lien", n'est-ce pas simplement le nom du fichier PHP, suivi du numéro de la ligne où se trouve le var_dump()?
Je ne pense pas que cela puisse être la source de ton problème. A moins que tu utilises var_dump() en production, et pas pour diagnostiquer les problèmes.
13 mars 2023 à 21:44
oui mais si on retourne à l'image que j'ai posté dans le post24 c'est un var_dump(debug_backtrace()); que j'ai fait et ce lien n'existe pas?? c'est pour cela que je me pose cette question.
13 mars 2023 à 22:24
Tes deux sites sont configurés de la même façon? Tu n'as pas une option "test" sur l'un et "prod sur l'autre?
14 mars 2023 à 09:19
var_dump() se comporte différemment sur tes deux sites.
Tu peux vérifier cela en faisant une page qui fait uniquement un var_dump.
13 mars 2023 à 22:20
Non en fait je travaille uniquement sur wampserver.
14 mars 2023 à 09:10
Bonjour c'est gentil d'essayé de m'aider dans ce laborieux problème. Non le site sur mes 2 Pcs ont exactement les mêmes fichiers car j'ai simplement copié collé mes pages .php sur les 2 Pcs à l'identique sauf que celui qui ne fonctionne pas à la version PHP 7.4.33 et l'autre qui n'a aucun problème a le version PHP 5.3.5.
Par contre il y en a 1 où je travaille avec Komodo.edit 6.1 et l'autre j'ouvre mon site avec Notepad++
Et également lorsque je modifie 1 seule ligne de code sur mon fichier class.liste.php les 2 PCs ont le même soucis, c'est cette ligne ci-dessous. J'essaie de te donner le plus d'information possible au cas où....
Sur PC version PHP 5 qui fonctionne if($indice == $donnees->$champs[$idnum]) { $thisrec = 1; } else { $thisrec = 0; } Sur PC version PHP 7 $thisrec = !empty($this->champs) && is_array($this->champs) && $indice == $this->champs[$idnum] ? 1 : 0 ;
Merci.
14 mars 2023 à 14:09
j'ai fait un var_dump sur une page uniquement ci-dessous capture sur le PC qui va bien
et ici l'autre
Erreur ! La variable sql est vide !! C:\wamp64\www\gestion\libs\init.php:61: array (size=2) 0 => array (size=4) 'file' => string 'C:\wamp64\www\gestion\libs\init.php' (length=35) 'line' => int 98 'function' => string 'executeQuery' (length=12) 'args' => array (size=2) 0 => string 'SELECT * FROM cdc_configsite' (length=28) 1 => null 1 => array (size=4) 'file' => string 'C:\wamp64\www\gestion\index2.php' (length=32) 'line' => int 3 'args' => array (size=1) 0 => string 'C:\wamp64\www\gestion\libs\init.php' (length=35) 'function' => string 'require' (length=7)
14 mars 2023 à 19:48
Si je comprends bien, tu utilises le var_dump() non pas pour analyser ce qui se passe en cas de souci, mais pour faire fonctionner ton site.
Est-ce correct?
Je suggère que tu fasses une page php de test, contenant ceci:
<?php echo 'xdebug.overload_var_dump = ' . ini_get('xdebug.overload_var_dump') . "\n"; ini_set("xdebug.overload_var_dump",1); echo 'xdebug.overload_var_dump = ' . ini_get('xdebug.overload_var_dump') . "\n"; $x=123; var_dump($x); ?>
14 mars 2023 à 20:56
Bonjour Non j'utilise bien le var_dump uniquement pour voir ce qui se passe. D’ailleurs sur mon PC où il y a le site qui fonctionne je n'ai aucun var_dump. Voici ce que tu m'as demandé de faire.
xdebug.overload_var_dump = This setting has been removed, see the upgrading guide at https://xdebug.org/docs/upgrade_guide#removed-xdebug.overload_var_dump xdebug.overload_var_dump = This setting has been removed, see the upgrading guide at https://xdebug.org/docs/upgrade_guide#removed-xdebug.overload_var_dump C:\wamp64\www\gestion\libs\class.liste.php:6:int 123
Je te remercie.
14 mars 2023 à 21:37
Si tu utilises le var_dump() uniquement pour voir ce qui se passe, il n'y a absolument aucune raison de s'inquiéter de la présence de la ligne supplémentaire avec le nom du fichier et le numéro de ligne.
14 mars 2023 à 23:29
ok je n'y avait pas pensé, je me suis axé là dessus alors qu'après réflexion tu as raison. Alors je vais continuer à chercher la faille sinon je ne pourrai pas mettre mon site en prod.
Merci