Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617

    Chiarimento sulle funzioni.

    Ciao raga, da qualche giorno stò cercando di utilizzare di più le funzioni ansicchè gli include (al momento non vedo grandissima differenza ma il mondo dice il contrario).

    Non mi è chiara una cosa però ho fatto una funzione messa in un file function.php che fa pressapoco così:

    codice:
    <?php
    
    function query(){
    
        $query=mysql_query("SELECT* FROM tabella");
        while($temp=mysql_fetch_array($query)){
             
                 $dato=$temp['campo'];        
    
          }
    
    }
    
    ?>
    in un altro file richiamo tale funzione

    codice:
    require(function.php);
    
    <?php
    
       $query=query();
    
    ?>
    Ora quello che non capisco è: se non metto l' echo nella funzione non ricevo risultati nel file che la richiama. io vorrei che il risultato della query fosse richiamato nel file che richiama la funzione e non nella funzione stessa, altrimenti faccio prima a scrivere la query direttamente nel file interessato. Ma si può fare questa cosa o vaneggio?

    Grazie in anticipo!

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    dentro la "function" devi fare return($val); - dove $val è la variabile che vuoi "passare" alla chiamata (p.es. return($dato) - come "ultima" istruzione dentro il corpo della funzione stessa

  3. #3
    oltre a quanto ben detto da eiyen per capire la potenza delle funzioni prova a pensare al fatto che di "query" ne puoi fare di tanti tipi.. Non è detto che ci siano solo le SELECT.
    Quindi sulla tua funzione puoi impostare un bel parametro per diversificare le query. Con 1 funzione puoi fare più query differenti

    Codice PHP:
    function queryFetchArray$query ){

        
    $result mysql_query$query );

        while( 
    $temp mysql_fetch_array$result ) ) {
             
    $dato=$temp['campo'];
        }

        return 
    $dato;

    quindi:
    Codice PHP:
    $query 'SELECT* FROM tabella';

    $dati queryFetchArray$query );

    //test
    print_r$dati );

    $query2 "SELECT campo FROM tabella WHERE campo='valore'";

    $dati2 queryFetchArray$query2 );

    //test
    print_r$dati2 ); 
    1 funzione che ti permette di fare più cose... ovviamente sono solamente esempi per capire il concetto.. potresti provare a scindere la query vera e propria con il fetchArray e fare 2 funzioni... se vuoi provare poi vediamo
    Questa volta, più che un voto.. è favoreggiamento.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.