Jump to content
OrderHosting

Cannot use object of type ProductCore as array

Recommended Posts

Buonasera, ho girato in lungo e in largo tra internet e forum vari senza trovare risposta. Se cerco di Duplicare o Cancellare un prodotto ricevo Errore 500 Internal Server quindi attivando il Debug l'errore è il seguente: Cannot use object of type ProductCore as array

$product['id_product'] = $product['id'];
        }

        $id_product = $product['id_product'];

Credo che il problema sia proprio tra object e array ma non sono riuscito a risolvere in alcun modo.

Il file in questio è: in modules/ps_categoryproducts/ps_categoryproducts.php

Grazie a chiunque possa aiutarmi

Share this post


Link to post
Share on other sites

Ciao,

che versione di PS stai usando? Mi sembra strano che l'errore sia in un modulo nativo di Prestashop ...

Comunque, la questione è che probabilmente nel modulo hai un oggetto e lo stai usando come array, quindi la regola generale è:

suponendo che tu voglia estrarre l'ID di un prodotto, se hai un array scrivi:
$product['id']

mentre se hai un oggetto scrivi:
$product->id

Spero di averti aiutato, buona giornata,
Federica

Share this post


Link to post
Share on other sites
7 hours ago, fedesib said:

Ciao,

che versione di PS stai usando? Mi sembra strano che l'errore sia in un modulo nativo di Prestashop ...

Comunque, la questione è che probabilmente nel modulo hai un oggetto e lo stai usando come array, quindi la regola generale è:

suponendo che tu voglia estrarre l'ID di un prodotto, se hai un array scrivi:
$product['id']

mentre se hai un oggetto scrivi:
$product->id

Spero di averti aiutato, buona giornata,
Federica

Ciao Federica grazie innanzitutto per avermi risposto.

Non ho ancora risolto il problema ma ti dico cosa ho fatto. Ho modificato la seguente stringa:

336 $product['id_product'] = $product['id']; 

in

336 $product['id_product'] = $product->id;

Ricevo lo stesso errore ma alla stringa 339 che, come detto ad inizio discussione è la seguente:

 $id_product = $product['id_product'];

La versione di PS è: 1.7.0.4

Grazie

Share this post


Link to post
Share on other sites

Ciao,

da quello che vedo nella funzione getInformationFromConfiguration le righe che ti interessano dovrebbero essere:

       $product = $configuration['product'];
        if ($product instanceof Product) {
            $product = (array) $product;
            $product['id_product'] = $product['id'];
        }

Dato che l'oggetto $product viene convertito in array dalla stringa $product = (array)$product non dovresti avere nessun errore, a meno che la conversione, per qualche motivo non vada a buon fine (qualche info sul casting, qui: http://ocramius.github.io/blog/fast-php-object-to-array-conversion/).

Io proverei a vedere cosa c'è effettivamente nell'array $product e quindi farei un bel print_r($product) dopo $product = (array)$product per capire cosa succede.

Ciao,
Federica

Share this post


Link to post
Share on other sites

Purtroppo ho sempre lo stesso errore pur aggiornando il PrestaShop da 1.7.0.4 al 1.7.0.6

Una domanda le vorrei rivolgere e se aggiornassi al PrestaShop 1.7.6.1 potrei avere dei problemi con il template?

Grazie

Share this post


Link to post
Share on other sites

Ciao,

in genere i temi per la versione 1.7 dovrebbero andare bene per tutte le versioni a partire dalla 1.7, quindi non dovrebbero esserci problemi nel passaggio alla 1.7.6.1. Però, se è un tema acquistato o customizzato ti consiglio di chiedere prima allo sviluppatore, per sicurezza.

Buona giornata,
Federica

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More