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

    [HELP] mysql_fetch_assoc ERRORE

    Dopo avere risolto il problema di post delle news, ora mi si presenta un ulteriore dilemma, ho modificato il mio script per poter modificare o cancellare degli articoli

    script:

    Codice PHP:
    /* connessione al database */
       
    $db mysql_connect ('localhost','.....','..........');
       
    mysql_select_db ('........',$db);
        
       
    //-----------------------------------------------------------------------------------------------------------    
       // MODULO INSERIMENTO DELLE NEWS
       //-----------------------------------------------------------------------------------------------------------    
       /* form inserimento news */
       
    function formInsert() {
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD><span class=\"Stile2\">MODULO INSERIMENTO NEWS</span></span>

    </TD></TR>\n"
    ;
          echo 
    "<TR><TD><FORM action=\"index.php?lng=it&cdx=chk&skip=ok&action=addnews\" method=POST>\n";
          echo 
    "Titolo
    <input type=\"text\" " 
    .
             
    "width=\"30\" name=\"titolo\">
    \n"
    ;
          echo 
    "
    Articolo
    <TEXTAREA cols=\"40\" rows=\"10\" " 
    .
             
    "name=\"articolo\"></TEXTAREA>
    \n"
    ;
          echo 
    "
    <input type=\"submit\" name=\"submit\" " 
    .
             
    "value=\"Inserisci\"\n";
          echo 
    "</FORM></TD></TR>\n";
          echo 
    "</TABLE>\n";
          }
          
       
    /* funzione inserimento news */
       
    function insertNews() {
          global 
    $db;
          
          
    /* inseriamo la news nella tabella */
          
    $query "INSERT INTO news(postdate, title, newstext) VALUES(now(),'$_POST[titolo]','$_POST[articolo]')";
          
    mysql_query($query)  or die("Query non valida: " mysql_error());
         
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD><span class=\"Stile2\">MODULO INSERIMENTO NEWS</span></span>

    </TD></TR>\n"
    ;
          echo 
    "<TR><TD>News inserita. Grazie!

    \n"
    ;
          echo 
    "<a href=\"index.php?lng=it&cdx=chk&skip=ok\">Amministrazione</a></TD></TR>\n";
          echo 
    "</TABLE>\n";
          }
       
    //-----------------------------------------------------------------------------------------------------------    
       //-----------------------------------------------------------------------------------------------------------    
        
       //-----------------------------------------------------------------------------------------------------------
       // MODULO CANCELLAZIONE NEWS E ARTICOLI    
       //-----------------------------------------------------------------------------------------------------------      
       /* funzione cancella news */
       
    function deleteNews($item) {
          global 
    $db;
          
          
    /* cancello la news nella tabella e i commenti */
          
    mysql_query ("DELETE FROM news WHERE id = '$_POST[item]'") or die ( "Non riesco ad eseguire la richiesta");
          
    mysql_query ("DELETE FROM news_comments WHERE news_id = '$_POST[item]'") or die ( "Non riesco ad eseguire la richiesta"); 
         
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD><span class=\"Stile2\">MODULO ELIMINAZIONE NEWS</span></span>

    </TD></TR>\n"
    ;
          echo 
    "<TR><TD>News e commenti cancellati. Grazie!

    \n"
    ;
          echo 
    "<a href=\"index.php?lng=it&cdx=chk&skip=ok\">Amministrazione</a></TD></TR>\n";
          echo 
    "</TABLE>\n";
          }    
          
          
    /* form cancella news */
       
    function formDelete() {
          global 
    $db;
          
          
    /* recupero le news */
          
    $query "SELECT *" 
                   
    "DATE_FORMAT(postdate, '%d-%m-%Y') as date " .
                   
    "FROM news ORDER BY postdate DESC";
          
    $result mysql_query ($query);
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD>Commenti:</TD></TR>\n";
          echo 
    "</TABLE>\n";
          echo 
    "
    \n"
    ;
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD><span class=\"Stile2\">MODULO ELIMINAZIONE NEWS</span></span>

    </TD></TR>\n"
    ;
        
          
    /* visualizzo form selezione */
          
    while ($row mysql_fetch_assoc ($result)) {
            
    $id $row['id'];
            
    $titolo htmlentities ($row['title']);
            
    $data $row['date'];
            echo 
    "<TR><TD><FORM action=\"index.php?lng=it&cdx=chk&skip=ok&action=delnews\" method=POST>\n";
            echo 
    "<input type=hidden name=\"item\" value=\"'.$id.'\">[b]$titolo[/b] $data</TD><TD><input type=\"submit\" name=\"submit\" value=\"Cancella\"</TD>\n";
            echo 
    "</FORM></TD></TR>\n";
            }
          echo 
    "</TD></TR></TABLE>\n";
          }    
       
    //-----------------------------------------------------------------------------------------------------------    
       //-----------------------------------------------------------------------------------------------------------
       
       //-----------------------------------------------------------------------------------------------------------    
       // MODULO MODIFICA NEWS
       //-----------------------------------------------------------------------------------------------------------
       /* form selezione news */
       
    function selectEdit() {
          global 
    $db;
       
    /* recupero le news */
       
    $query "SELECT *" 
                
    "DATE_FORMAT(postdate, '%d-%m-%Y') as date " .
                
    "FROM news ORDER BY postdate DESC";
        
    $result mysql_query ($query);
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD>Commenti:</TD></TR>\n";
          echo 
    "</TABLE>\n";
          echo 
    "
    \n"
    ;
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD><span class=\"Stile2\">MODULO MODIFICA NEWS</span></span>

    </TD></TR>\n"
    ;
                    
          
    /* visualizzo form selezione */
          
    while ($row mysql_fetch_assoc ($result)) {
            
    $id $row['id'];
            
    $titolo htmlentities ($row['title']);
            
    $data $row['date'];
            echo 
    "<TR><TD><FORM action=\"index.php?lng=it&cdx=chk&skip=ok&action=formEdit\" method=POST>\n";
            echo 
    "<input type=hidden name=\"item\" value=\"'.$id.'\">[b]$titolo[/b] $data</TD><TD><input type=\"submit\" name=\"submit\" value=\"Cancella\"</TD>\n";
            echo 
    "</FORM></TD></TR>\n";
            }
          echo 
    "</TD></TR></TABLE>\n";
          }    
          
       
    /* form modifica news */
       
    function formEdit($item) {
          global 
    $db;
       
    /* recupero le news */
       
    $query "SELECT *" 
                
    "FROM news WHERE id = '$_POST[item]'";
        
    $result mysql_query ($query);
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD>Commenti:</TD></TR>\n";
          echo 
    "</TABLE>\n";
          echo 
    "
    \n"
    ;
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD><span class=\"Stile2\">MODULO MODIFICA NEWS</span></span>

    </TD></TR>\n"
    ;
                    
          
    /* visualizzo form selezione */
          
    while ($row mysql_fetch_assoc ($result)) {
            
    $id $row['id'];
            
    $titolo htmlentities ($row['title']);
            
    $articolo nl2br ($row['newstext']);        
            echo 
    "<TR><TD><FORM action=\"index.php?lng=it&cdx=chk&skip=ok&action=upnews\" method=POST>\n";
            echo 
    "Titolo
    <input type=\"text\" " 
    .
             
    "width=\"30\" name=\"titolo\" value=\"'.$titolo.'\">
    \n"
    ;
            echo 
    "
    Articolo
    <TEXTAREA cols=\"40\" rows=\"10\" " 
    .
             
    "name=\"articolo\" value=\"'.$articolo.'\"></TEXTAREA>
    \n"
    ;
            echo 
    "
    <input type=\"submit\" name=\"submit\" " 
    .
             
    "value=\"Inserisci\"\n";
            echo 
    "<input type=hidden name=\"item\" value=\"'.$id.'\">\n";
            echo 
    "</FORM></TD></TR>\n";        
            }
          echo 
    "</TD></TR></TABLE>\n";
          }    
       
       
    /* funzione edita news */
       
    function editNews($item) {
          global 
    $db;
          
          
    /* aggiorniamo la news nella tabella */
          
    mysql_query("UPDATE news SET newstext = '$_POST[articolo]' WHERE id = '$_POST[item]'") or die ( "Non riesco ad eseguire la richiesta"); 
          
    mysql_query("UPDATE news SET title = '$_POST[titolo]' WHERE id = '$_POST[item]'") or die ( "Non riesco ad eseguire la richiesta");
          
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD><span class=\"Stile2\">MODULO INSERIMENTO NEWS</span></span>

    </TD></TR>\n"
    ;
          echo 
    "<TR><TD>News modificata. Grazie!

    \n"
    ;
          echo 
    "<a href=\"index.php?lng=it&cdx=chk&skip=ok\">Amministrazione</a></TD></TR>\n";
          echo 
    "</TABLE>\n";
          }
       
    //-----------------------------------------------------------------------------------------------------------    
       //-----------------------------------------------------------------------------------------------------------
       
       /* funzione start */
       
    function manageNews() {
          
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD><span class=\"Stile2\">MODULO GESTIONE NEWS</span></span>

    </TD></TR>\n"
    ;
          echo 
    "<TR><TD><a href=\"index.php?lng=it&cdx=chk&skip=ok&action=formInsert\">Inserisci News</a>
    <a href=\"index.php?lng=it&cdx=chk&skip=ok&action=selectEdit\">Modifica News</a>
    <a href=\"index.php?lng=it&cdx=chk&skip=ok&action=formDelete\">Cancella News</a></TD></TR>\n"
    ;
          echo 
    "</TABLE>\n";
          }
       
       
    //-----------------------------------------------------------------------------------------------------------    
       /* questa è la parte dello script dove viene presa la decisione di che cosa fare */
       //-----------------------------------------------------------------------------------------------------------
       
    echo "<CENTER>\n";
       switch(
    $_GET['action']) {
        
            
    /* moduli inserimento news */
           
    case 'addnews':
                
    insertNews();
                break;
           case 
    'formInsert':
                
    formInsert();
                break;
           
    /* moduli modifica news */
           
    case 'upnews':
                
    editNews($_GET['item']);
                break;
           case 
    'selectEdit':
                
    selectEdit();
                break;
           case 
    'formEdit':
                
    formEdit($_GET['item']);
                break;
           
    /* moduli cancella news */   
           
    case 'delnews':
                
    deleteNews($_GET['item']);
                break;
           case 
    'formDelete':
                
    formDelete();
                break;
           default:
                  
    manageNews();
          }
       echo 
    "</CENTER>\n";
       
    //-----------------------------------------------------------------------------------------------------------
       //-----------------------------------------------------------------------------------------------------------
       

    Quando dalla pagina iniziale manageNews vado a selezionare il link modifica o cancella
    mi arriva l'errore:

    Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/ftp-ataca/torinofreetime.com/index.php on line ...

    in entrambi i casi corrispondono alle righe:

    Codice PHP:
    while ($row mysql_fetch_assoc ($result)) { 
    dei moduli modifica e cancellazione nelle funzioni selectEdit e formDelete.

    Avrei cortesemente bisogno di capire nel mio script dove è l'errore, piu precisamente qui:

    Codice PHP:
    /* form cancella news */
       
    function formDelete() {
          global 
    $db;
          
          
    /* recupero le news */
          
    $query "SELECT *" 
                   
    "DATE_FORMAT(postdate, '%d-%m-%Y') as date " .
                   
    "FROM news ORDER BY postdate DESC";
          
    $result mysql_query ($query);
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD>Commenti:</TD></TR>\n";
          echo 
    "</TABLE>\n";
          echo 
    "
    \n"
    ;
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD><span class=\"Stile2\">MODULO ELIMINAZIONE NEWS</span></span>

    </TD></TR>\n"
    ;
        
          
    /* visualizzo form selezione */
          
    while ($row mysql_fetch_assoc ($result)) {
            
    $id $row['id'];
            
    $titolo htmlentities ($row['title']);
            
    $data $row['date'];
            echo 
    "<TR><TD><FORM action=\"index.php?lng=it&cdx=chk&skip=ok&action=delnews\" method=POST>\n";
            echo 
    "<input type=hidden name=\"item\" value=\"'.$id.'\">[b]$titolo[/b] $data</TD><TD><input type=\"submit\" name=\"submit\" value=\"Cancella\"</TD>\n";
            echo 
    "</FORM></TD></TR>\n";
            }
          echo 
    "</TD></TR></TABLE>\n";
          } 

  2. #2

  3. #3
    adesso ho risolto, ma si presenta un problema assurdo, la query di cancellazione, non eleimina l'articolo dal db.... perchè?

    Codice PHP:
    mysql_query ("DELETE FROM news WHERE id = '$_POST[item]'") or die ( "Non riesco ad eseguire la richiesta");
          
    mysql_query ("DELETE FROM news_comments WHERE news_id = '$_POST[item]'") or die ( "Non riesco ad eseguire la richiesta"); 
         
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD><span class=\"Stile2\">MODULO ELIMINAZIONE NEWS</span></span>

    </TD></TR>\n"
    ;
          echo 
    "<TR><TD>News e commenti cancellati. Grazie!

    \n"
    ;
          echo 
    "<a href=\"index.php?lng=it&cdx=chk&skip=ok\">Amministrazione</a></TD></TR>\n";
          echo 
    "</TABLE>\n"
    Ho controllato tutti i parametri di connessione al db, la tabella news esiste i campi sono corretti ma non avviene la cancellazione dell'articolo

    l'item viene inviato tramite:

    Codice PHP:
    recupero le news */
          
    $query "SELECT *, DATE_FORMAT(postdate, '%d-%m-%Y') as date FROM news ORDER BY postdate DESC";
          
    $result mysql_query ($query);
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD>Commenti:</TD></TR>\n";
          echo 
    "</TABLE>\n";
          echo 
    "
    \n"
    ;
          echo 
    "<TABLE border=\"0\" width=\"100%\">\n";
          echo 
    "<TR><TD><span class=\"Stile2\">MODULO ELIMINAZIONE NEWS</span></span>

    </TD></TR>\n"
    ;
        
          
    /* visualizzo form selezione */
          
    while ($row mysql_fetch_array ($result)) {
            
    $id $row['id'];
            
    $titolo htmlentities ($row['title']);
            
    $data $row['date'];
            echo 
    "<TR><TD><FORM action=\"index.php?lng=it&cdx=chk&skip=ok&action=delnews\" method=POST>\n";
            echo 
    "<input type=hidden name=\"item\" value=\"'.$id.'\">[b]$titolo[/b] $data</TD><TD><input type=\"submit\" name=\"submit\" value=\"Cancella\"</TD>\n";
            echo 
    "</FORM></TD></TR>\n";
            }
          echo 
    "</TD></TR></TABLE>\n"
    dal campo hidden con nome item...

    ma cavolo perchè???

  4. #4

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.