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

    mysql_fetch_object(): supplied argument is not a valid MySQL result resource in

    Salve a tutti, e ormai da un bel po che ci sto provando quindi mi rivolgo a voi. Ho un messaggio d'errore che mi perseguita, ovvero:

    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\narsil_comunity\classi\forum.php on line 64

    ho notato che è non riesco a rumuoverlo e non so per quale motivo le ho provate davvero tutte!

    Codice PHP:
        function show_thread($forum,$pagina,$order="response",$stringa=""){

          
    //calcolo dei mex per ogni pagina rispettanto la pagina attuale
          
    $limit_max $pagina*20;
          
    $limit_min = ($pagina-1)*20;
          
          
    #echo $limit_max."
    ".$limit_min;
          
          
    $query = "select from ".prefix."forum_mex ";
          
    $query.= "where (forum ".$forum." and id flagorder by importante,".$order." desc limit ".$limit_min.",".$limit_max."";        
          
          unset(
    $limit_max,$limit_min,$pagina,$forum);
          
          
    $ris = mysql_query($query);  
          while (
    $row = mysql_fetch_object($ris)){ // QUESTA è LA RIGA 64
            
            
    $stringa.= "<tr>";
                    
            if (
    $row->importante == 1 && $row->chiuso == 1){
              
    $note = "[§]";
            }elseif (
    $row->importante == 1){ 
              
    $note = "[!]";
            }elseif (
    $row->chiuso == 1){
              
    $note = "[x]";
            }else{
              
    $note = "[&curren;]";
            }
            
            
    $stringa.= "<td width=\"40\"align=\"center\">".$note."</td>"; unset($note);
            
    $stringa.= "<td width=\"250\">".$row->titolo."</td>";
            
    $stringa.= "<td width=\"110\" class=\"cont22\">".$row->user."</td>";
            
    $stringa.= "<td width=\"50\" class=\"cont22\">".$row->views."</td>";
            
    $stringa.= "<td width=\"50\" class=\"cont22\">".$row->post."</td>";
            
            if (!empty(
    $row->response)){
              
    $note "<font size=\"1\" face=\"verdana\">".$row->response_user."
    "
    .date("d-m-Y H:m",$row->response)."</font>";
            }else{
              
    $note "--";
            }
            
            
    $stringa.= "<td width=\"150\" class=\"cont22\">".$note."</td>";
             
    $stringa.= "</tr>";
                    
            
    $this->forum_for $stringa;
            unset(
    $stringa,$note,$row,$ris);
          }
        } 
    prima di postare ho provato a fare

    echo $query;
    exit();

    e mettere il risultato nell interfaccia di mysql ed il codice sembra a posto ora non so dove posso aver sbagliato... spero che qualcuno di voi possa darmi una mano

  2. #2
    prova a mettere la segnalazione d'errore alla query.

    $ris = mysql_query($query) or die(mysql_error());

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

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379
    resta uguale:

    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\narsil_comunity\classi\forum.php on line 69

    ma la query funziona io non so che dire

  4. #4
    Originariamente inviato da jerry6565
    resta uguale:

    Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\narsil_comunity\classi\forum.php on line 69

    ma la query funziona io non so che dire
    Codice PHP:
         //  unset($limit_max,$limit_min,$pagina,$forum);  

          
    $ris mysql_query($query) or die(mysql_error());  
          while (
    $row mysql_fetch_object($ris)){ // QUESTA è LA RIGA 64 
    $ris e' un resource id# non valido

    Prova anche a commentare l'unset (perche' lo fai?) od almeno metterlo dopo aver utilizzato $query.

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

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379
    Ho provato a commentarlo non cambia nulla!

    Ho provato a stampare $ris con print_r e mi da: Resource id #8

  6. #6
    a me il problema sembra proprio in

    unset($stringa,$note,$row,$ris);

    e' questo che hai commentato?

    Se distruggi la valriabile $ris nel ciclo poi ovvio che da errore.

    prova a mettere un debug subito dopo

    while ($row = mysql_fetch_object($ris))

    tipo
    Codice PHP:
    while ($row mysql_fetch_object($ris))
    echo 
    "pippo"
    quanti "pippo" vedi?

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379
    raven hai proprio ragione. mi era completamente sfuggito che fosse all'interno del ciclo con tutte quelle parentesi che ho mi sono perso

    grazie mille...

    PS. secondo voi è di utilità unsettare le variabili una volta finito il loro utilizzo? o è un inutile spreco che faccio fare al server?

  8. #8
    prego



    PS
    mai eliminato nessuna variabile in vita mia. Non ne vedo l'utilita' se non in casi specifici ma aspetto altre opinioni.

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    379
    io pensavo se una variabile fosse grande come lo puo diventare $stringa ad esempio, è utilie eliminarla ma di mio inesperto pulpito questo ragionamento! xD

  10. #10
    si, ma dipende dallo script.

    Le variabili vengono (o almeno cosi' ho sempre creduto) eliminate alla fine dello script.

    Per cui se - nel complesso della pagina - di variabili pesanti non ce ne sono molte, credo si possa aspettare che la natura faccia il proprio corso.

    Ma da valurare caso per caso.

    Ad esempio una buona gestione della dichiarazione delle variabile e dello scope potrebbe gia' alleggerire la memoria.

    Infine una considerazione piu "filosofica": se PHP e' stato creato senza una tipizzazione dei dati cio' significa che si e' voluto che noi poveri sviluppatori non ci curassimo molto di questi aspetti.

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.