Custom Url in Emfield: in locale va, in remoto no!

8 contenuti / 0 new
Ultimo contenuto
Custom Url in Emfield: in locale va, in remoto no!

Utilizzando Embed Image Field (compreso in EmField) ho creato un cck che mi consente di inserire le immagini da Flirck, Picasa e
..Custom Url (cioè visualizzare delle immagini anche dai siti comuni)

ho provato in locale e funziona tutto.

sul sito non va! (Il sito è identico a quello in locale, stessi moduli, settaggi etc..)

mi dice: "You have specified an invalid media URL or embed code."

però se inserisco un'immagine che ho nel mio sito senza "http://www...." funziona!

Da cosa può dipendere? O_o

C'è nebbia sul internet sta sera, è non vedo bene cos'è il problema...

Andr3a wrote:
Utilizzando Embed Image Field (compreso in EmField) ho creato un cck che mi consente di inserire le immagini da Flirck, Picasa e
..Custom Url (cioè visualizzare delle immagini anche dai siti comuni)
ho provato in locale e funziona tutto.

Questo è già qualcosa. Indirizzo del sito? http://localhost ? Esempio dei URL funzionante sia in database, sia nel HTML?

Andr3a wrote:
sul sito non va! (Il sito è identico a quello in locale, stessi moduli, settaggi etc..)

Niente è identico, simile si. L'URL del sito sarà diverso, no? Comunque ho capito...

Andr3a wrote:
mi dice: "You have specified an invalid media URL or embed code."
però se inserisco un'immagine che ho nel mio sito senza "http://www...." funziona!
Da cosa può dipendere? O_o

Chi dice, scusa? Drupal? Il browser? Il modulo EmField? Dove dice? Nel watchdog? Nella zona messaggi? Dove doveva aparire l'immagine?
Facciamo che il tuo sito è http://www.example.com, com'era l'URL prima e dopo? Esempio: prima http://www.example.com/immagine.jpg dopo: /immagine.jpg

Più informazione che dai, più facile che qualcuno sarà in grado di fornire la dritta giusta...Quando si schiarisce la nebbia, ovviamante
John

Più imparo, più dubito.

Hai ragione Jhl, ho scritto di fretta e sono stato impreciso.

Ti allego uno screenshoot.

Come vedi quando clicco su Salva il modulo emfield (penso!) mi risponde "You have specified an invalid media URL or embed code."

Non mi accetta l'url del tipo http://www.google.it/intl/it_it/images/logo.gif

In locale funziona... non vorrei che è il server che mi ospita che ha qualche "mancanza".
Inserendo un url di un'immagine che è presente nel mio sito in questo modo "/site/all/logo.gif" invece non mi da errore.

Wow, e credevo di essere molto preciso io...
Questo URL ovviamente funziona, è una richiesta semplice per un trasferimento di file. Se scrivi nel testo del body
<img src="http://www.google.it/intl/it_it/images/logo.gif" />
allora sicuramente apparirà l'immagine.
Quindi probabilmente Emfield (o come si chiama) sta facendo qualcosa in più, tipo comunicare col server per estrare ulteriori informazioni, forse mimetype, et al.
Dunque, hai questa mappa:

Dove      Locale (/) Esterno http://...
Localhost Si         Si
Server    Si         No

Credo che hai ragione puntare il ditto al hosting. Sembrebbe che Drupal (e quindi EmField) non può comunicare con server esterni. Simile a http://www.drupalitalia.org/node/8881 - controlla se riesci a vedere gli aggiornamenti...

Più imparo, più dubito.

sì, gli aggiornamenti funzionano.

ma forse ho trovato il problema.
In locale nel php.ini allow_url_fopen è su ON
mentre sul sito allow_url_fopen è su OFF!

provando a mettere anche in locale allow_url_fopen su OFF da lo stesso errore!

devo chiedere al mio hosting se può attivarmelo!

(però gli embed da picasa o flirck funzionano, i custom url non vanno, evidentemente quest'ultimo richiama l'fopen..)

ecco il problema!

nel file custom_url.inc

c'è questa funzione:
$_filedata = @getimagesize($_filename);

@getimagesize non riesce a processare le immagini che stanno su URL esterni..

in locale con xampp invece mi funziona!

Sapete gentilmente come potrei risolvere?

Ma comunque @getimagesize() non può generare un errore, perchè la funzione è getimagesize() preceduto dal operatore @, e dal manuale quel operatore fa ignorare errori generati dal espressione (la funzione getimagesize() in questo caso)...

In più, la funzione getimagesize() può leggere sia un file locale, ma anche un file remoto tramite stream (configurazione permettendo). Emphasi mio.

Oltre purtroppo non posso andare, perchè non so quale dei gazillioni di parametri in php.ini devi cambiare - se c'è... Forse meglio chiedere al autore di EmField, o un forum PHP...

Più imparo, più dubito.

infatti non genera l'errore, però siccome non da nessun risultato allora viene richiamato il testo "You have specified an invalid media URL or embed code." (anche se alla fine non ci azzecca niente questa frase nel contesto).

Dovrei usare la libreria cURL mi dicono dal supporto del mio hosting...

intanto per adesso ho risolto commentando la funzione che controlla se il file è un jpeg o meno,
in fondo sono sicuro che nel cck vado ad inserire l'url esatto di un'immagine jpeg visto che questo tipo di contenuto è limitato a poche persone.

Grazie di tutto comunque!