Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379

    funzione - mysql - array [non vogliono stare assieme]

    E' tutta la sera che ci provo e premetto che a quest'ora pure le mie idee saranno contorte. Voglio quindi già ora con largo anticipo ringraziare per la lettura ed un eventuale risposta .

    Scherzi a parte, ieri pomeriggio m' è venuto un lampo. Mi sono detto: "Ma come mai scrivere tutte le query a mano se una semplice funzione php farebbe tutto il sporcaccio lavoro x me?". Molti di voi ora diranno "gia' sentito e gia' messo in pratica da anni"

    Io cmq sono ancora un neofita e mi sembrava di aver scoperto l'acqua calda fin che mi sono accorto che era "impossibile" [x me insomma] far qudrare l'array con il ciclo, visto che non avevo piu' una condizione stabile quale: $row = mysql_fetch_array($result). Ho pensato di fare bene un ciclo FOR [$i=0; $i <$variabile; $i++] nell'intento che esso mi potesse risolvere le qestioni in sospeso.

    Dopo svariati tentativi, sbattimenti di testa contro il pc ed il muro e molto altro ancora vi scrivo per l'ennesima volta:

    che cacchio di array è quella che si ottiene con mysql_fetch_array()? E' richiamabile nel ciclo in un modo decente?

    inoltre vorrei postare la funzioncina credo sia piena di imperfezioni anche se non partendo cicli funziona perfettamente

    Codice PHP:
    function jsql($query,$action,$cnt){ // (query,azione,connessione)
     
     
    if(isset($query,$action,$cnt)){
     
     
    $res mysql_query($query,$cnt); 
      
      if (
    $res == false){
       die (
    "Errore nella composizione della query");
       
    mysql_close($cnt);
      }
      else
      { 
       switch  (
    $action){
        case 
    "num_rows" $ry mysql_fetch_array($res);
         break;
        case 
    "affected_rows" $ry mysql_fetch_array($res);
         break;
        case 
    "fetch_array" $ry mysql_fetch_array($res);
         break;
        case 
    "fetch_row" $ry mysql_fetch_array($res);
         break;
        case 
    "fetch_assoc" $ry mysql_fetch_array($res);
         break;
        case 
    "result" $ry mysql_fetch_array($res);
         break;
       }
      }
     }
     else
     {
      
    $ry false;
     }
     return 
    $ry

    Illuminatemi vi prego non riesco nemmeno a far andare una cosa del genere e davvero ne ho provate molte
    Codice PHP:
      $mod_home_gallery  jsql("SELECT * FROM ".$db_fix."gallery WHERE ID > 0 ORDER BY ID DESC","fetch_array",$db_cnt);
        for(
    $i1=0$i1 <$mod_home_gallery$i1++){} 
    P.S. spero di essermi spiegato minimamente!! Grazie ancora di tutto a tutti ^^

  2. #2
    non ho letto tutto e men che meno lo script (a quest'ora... )

    una nota credo importante per quello che vuoi fare:

    mysql_fetch_array() rende un array numerico ed uno associativo del result set. Quindi "DOPPI" ...

    fai un bel print_r($ry) e ti renderai conto. Usa mysql_fetch_row() se non vuoi considerare l'indice associativo.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379
    ma cosa intendi per array numerica associativa O.o?

    ps. ovviamente i contenuti dei case sono errati; correggo:

    Codice PHP:
        case "num_rows" $ry mysql_num_rows($res);
         break;
        case 
    "affected_rows" $ry mysql_affected_rows($res);
         break;
        case 
    "fetch_array" $ry mysql_fetch_array($res);
         break;
        case 
    "fetch_row" $ry mysql_fetch_row($res);
         break;
        case 
    "fetch_assoc" $ry mysql_fetch_assoc($res);
         break;
        case 
    "result" $ry mysql_result($res);
         break; 

  4. #4
    pensavo si capisse. "INDICE" numerico e "INDICE" associativo. esegui un print_r() e lo vedi da te.

    Per il resto giusto o sbagliato che sia ... non l'ho letto....

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379
    sono a scuola non posso verificare il funzionamento di print_r ma mi voglio fidare! appena torno a casa faccio un controllo sull'array promesso!

    del resto ce possibilità di rendere piu' carina la mia funzione o è perfetta ed infallibile?

  6. #6
    Originariamente inviato da jerry6565
    del resto ce possibilità di rendere piu' carina la mia funzione o è perfetta ed infallibile?
    non saprei ... non l'ho letta....

    :diplomatico:

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Sinceramente non ho una grande esperienza, ma trovo che una funzione più semplice di questa tu non la potessi fare!
    Ma non ho ben capito perchè dici che non vogliono stare insieme...
    WordPress AndMore - Apprendiamo WordPress Facilmente!

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379
    grazie di tutto piero ma il mio problema non è risolto!

    io normalmente scrivevo in questo modo:
    Codice PHP:
    $sql "select x form y";
    $result mysql_query($sql);

    while(
    $ry mysql_fetch_array){
     echo 
    $ry['nnn'].$ry['mmm'];

    in questo modo mi assicuravo di stampare tutta la colonna "nnn" e "mmm" di una tabella nel database.

    utilizzando la mia funzioncina una cosa del genere non andava piu':
    Codice PHP:
    $ry jsql("select x form y","mysql_fetch_array",$connessione)

    while (
    $ry){
     echo 
    $ry['nnn'].$ry['mmm'];

    Qualcuno puo' darmi una soluzione?

  9. #9
    Allora vediamo un pochetto...
    Se non mi sbaglio il tuo errore sta nel fatto che tenti di avviare un while con soltanto un valore di $ry. Per quanto ne so io, tutte le funzioni mysql_fetch_... assegnano un valore identificativo di un record SQL. Con while permettiamo di scorrere questi risultati fino alla fine dei campi.
    Per come lo usi te, il while agisce soltanto sulla variabile che ha impostato il valore di mysql_fetch e quindi non direttamente all'assegnazione dei vari valori.
    Quindi penso che il ciclo così fatto possa funzionare al massimo una volta!
    Se mi devo spiegare meglio basta chiedere!
    WordPress AndMore - Apprendiamo WordPress Facilmente!

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379
    dire il vero il ciclo parte e va in loop, ed il valore estratto e sempre lo stesso come hai detto tu!

    fin qui cero anche io !!

    ce modo di rimediare o creare una funzione che mi permetta di fare quello che intendo io?

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