Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Problema conversione valuta solo se è zero

    Tramite il seguente codice ottengo la conversione di un numero, ma se gli passo valore "0.00" ottengo l'errore:

    Notice: Undefined offset: 0 in /miosito/file.php on line 23

    Come posso risolvere? Il codice è:

    codice:
    function prezzo($valuta, $amount) {
    	$url = "https://www.google.com/finance/converter?a=" . $amount . "&from=EUR&to=" . $valuta;
    	$ch = curl_init();
    	$timeout = 0;
    	curl_setopt ($ch, CURLOPT_URL, $url);
    	curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
    	curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    	$rawdata = curl_exec($ch);
    	curl_close($ch);
    	$matches = array();
    	preg_match_all("|<span class=bld>(.*)</span>|U", $rawdata, $matches);
    	$result = explode(" ", $matches[1][0]);
    	return $valuta.' '.round($result[0], 2);
    }

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Prova a fare un print rawdata; e poi guarda il sorgente della pagina. Capirai perche non funziona.

    Per risolvere testa l'esistenza del posto dell'array con isset.

    PS : se passi EUR come valuta dà lo stesso messaggio di 0.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Non riesco a trovare l'errore che viene fuori con ad esempio:

    echo prezzo('USD', 0);

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Quote Originariamente inviata da magic_key Visualizza il messaggio
    Non riesco a trovare l'errore che viene fuori con ad esempio:

    echo prezzo('USD', 0);
    Hai provato quello che ho scritto ?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  5. #5
    codice:
    function prezzo($valuta, $amount) {
    
        if($amount==0):
            return 0;
        endif;
    
        $url = "https://www.google.com/finance/converter?a=" . $amount . "&from=EUR&to=" . $valuta;
        $ch = curl_init();
        $timeout = 0;
        curl_setopt ($ch, CURLOPT_URL, $url);
        curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        $rawdata = curl_exec($ch);
        curl_close($ch);
        $matches = array();
        preg_match_all("|<span class=bld>(.*)</span>|U", $rawdata, $matches);
        $result = explode(" ", $matches[1][0]);
        return $valuta.' '.round($result[0], 2);
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.