IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

erreur de type Array to string conversion


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2019
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2019
    Messages : 16
    Par défaut erreur de type Array to string conversion
    salut j'essaye d'afficher des prooduit d'un autre site sur le mien
    mais j'ais une erreur
    Array to string conversion
    voici mon script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <?php
     
    $recherche=htmlspecialchars($_POST['titrecomparer']);
     
    if (isset($recherche)) {
    //sur jumia 
    $url = 'https://www.jumia.ci/catalog/?q='.$recherche.'&sort=Price%3A%20Low%20to%20High&dir=asc';
    $page = file_get_contents($url); 
    preg_match_all("#<a class=\"link\" href=\"https://www.jumia.ci/+.html\"> + </a>#iu", $page, $infos);
     
    echo '<pre>';
    print_r($infos);
    echo '</pre>';
     
    //sur deal jumia
    $url = 'https://deals.jumia.ci/catalog?search-keyword='.$recherche.'&xhr=1y4qi&sortBy=price&sortOrder=asc';
    $page = file_get_contents($url); 
    preg_match_all("#<article class=\"post-holder product-click\" data-event=\"+\" data-position=\"1\" data-state=\"approved\">+</article>
    #iu", $page, $infos);
     
    echo '<pre>'.$infos['0'].'</pre>';
    }
    else{
       header("location:../model/osiris.php");
    }
    ?>

  2. #2
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 502
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 502
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var_dump($infos[0])
    La variable à la position 0 est également un tableau, vous ne pouvez-donc pas faire un echo sur un tableau.

    Bonne journée.

  3. #3
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2019
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2019
    Messages : 16
    Par défaut
    voici se qui s'affiche :

    array (size=0)
    empty
    array (size=0)
    empty

  4. #4
    Membre expérimenté Avatar de Trehinos
    Homme Profil pro
    Analyste développeur PHP
    Inscrit en
    Novembre 2012
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Analyste développeur PHP
    Secteur : Distribution

    Informations forums :
    Inscription : Novembre 2012
    Messages : 100
    Par défaut
    Vous ne capturez pas les matches, par conséquent le tableau $matches est soit vide (le texte ne correspond pas à l'expression régulière) soit contient un seul élément (un tableau de textes qui correspondent au masque).

    L'expression régulière contient des erreurs :
    • les + ont une signification spéciale mais pas tous seuls : a+ signifie "a" ou "aaa" ou "aaaa....aaaaa" et non "aXXXX". Pour dire "n'importe quel caractère plusieurs fois", il faut écrire .+.
    • les . ont également une signification spéciale donc il faut les échapper (\.) dans les ".html", notamment et partout ou il faut reconnaître le caractère ".".

    Documentations :
    • La fonction : https://www.php.net/manual/fr/functi...-match-all.php
    • Les matches: https://www.php.net/manual/fr/regexp...ubpatterns.php
    • Comment utiliser les .+* : https://www.php.net/manual/fr/regexp.reference.meta.php

Discussions similaires

  1. Erreur : Array to string conversion
    Par NewUserDelphi dans le forum Langage
    Réponses: 6
    Dernier message: 08/03/2019, 15h03
  2. Erreur avec affichage de "Array to string conversion "
    Par SuisCapable dans le forum Laravel
    Réponses: 0
    Dernier message: 28/11/2018, 09h47
  3. Erreur Multiple Select : Array to string conversion
    Par iamalex dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 29/10/2018, 14h44
  4. [MySQL] Formulaire erreur Array to string conversion
    Par akamaru dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 19/12/2008, 11h02
  5. Réponses: 2
    Dernier message: 28/12/2007, 12h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo