Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24

Discussione: checkbox x aggiornare

  1. #1

    checkbox x aggiornare

    ciao! Non so come posso fare x far aggiornare dei dati cekkando dei box. SOno 2 giorni ke cerco nel forum, le ho provate tutte ma..non mi funziona!
    io ho sto modulo:
    Codice PHP:
    <form name=\"cancella\" action=\"$PHP_SELF?destinazione=account&utente="$_SESSION['username'] ."&pagina=messaggi&vedi=ricevuti&azione=delete\" method=\"post\">
    <table width=\"100%\"  border=\"0\" cellspacing=\"0\" cellpadding=\"0\">"
    ;
    $query_msgricevuti "SELECT * FROM messaggi WHERE destinatario='$_SESSION[username]' AND visualizza='si' ORDER BY idmessaggio DESC";
    $result mysql_query($query_msgricevuti$db);
    $i1
    while (
    $row mysql_fetch_array($result)) 



    if(
    $i%2==0
    {
    echo
    "  <tr>
        <td width=\"40\"><input type=\"checkbox\" name=\"idmessaggio[]\" value=\"
    $row[visualizza]\"></td>
        <td  width=\"20\">"
    ;
    if(
    $row[letto]=="no")
    {
    echo 
    "<img alt=\"nuovo messaggio dal leggere\" src=\"img/msgnuovo.gif\">";
    }
    else
    {
    echo
    "<img alt=\"messaggio già letto\" src=\"img/msgletto.gif\">";
    }
    echo
    "</td>
        <td>
    $row[mittente]</td>
        <td width=\"20\"></td>
        <td width=\"200\">
    $row[data] ore $row[ora]</td>
        <td><img src=\"img/pixel_trasparente.gif\" width=\"10\" height=\"1\" alt=\"\"></td>
        <td align=\"center\"><a href=\"
    $PHP_SELF\"><img border=\"0\" alt=\"leggi il messaggio di $row[mittente]\" src=\"img/dettagli.gif\"></a></td>
      </tr>"
    ;
      }
      
      
       else
      { echo
    "  <tr bgcolor=\"#F2F1F1\">
        <td width=\"40\"><input type=\"checkbox\" name=\"idmessaggio[]\" value=\"
    $row[visualizza]\"></td>
        <td  width=\"20\">"
    ;
    if(
    $row[letto]=="no")
    {
    echo 
    "<img alt=\"nuovo messaggio dal leggere\" src=\"img/msgnuovo.gif\">";
    }
    else
    {
    echo
    "<img alt=\"messaggio già letto\" src=\"img/msgletto.gif\">";
    }
    echo
    "</td>
        <td>
    $row[mittente]</td>
        <td width=\"20\"></td>
        <td width=\"200\">
    $row[data] ore $row[ora]</td>
        <td><img src=\"img/pixel_trasparente.gif\" width=\"10\" height=\"1\" alt=\"\"></td>
        <td align=\"center\"><a href=\"
    $PHP_SELF\"><img border=\"0\" alt=\"leggi il messaggio di $row[mittente]\" src=\"img/dettagli.gif\"></a></td>
      </tr>"
    ;
      }
                
                  
    $i $i 1
      }
      
    echo
    "
    <tr class=\"anteprima\">
                  <td class=\"tabellacentraleBasso\" colspan=\"7\"><img  alt=\"\" src=\"img/pixel_trasparente.gif\" width=\"1\" height=\"10\"  border=\"0\"></td></tr>
                  <tr class=\"anteprima\">
        <td colspan=\"7\">
        <table width=\"100%\"  border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
      <tr>
        <td class=\"bold\"><input type=\"checkbox\" name=\"checkmadre\" onclick=\"selectAllMsg()\">seleziona tutti i messaggi</td>
        <td><img src=\"img/pixel_trasparente.gif\" width=\"10\" height=\"1\" alt=\"\"></td>
        <td class=\"bold\"><a href=\"#d\" onclick=\"submit()\"><img alt=\"cancella messaggi selezionati\" src=\"img/cestino.gif\" border=\"0\"></a><a href=\"#d\" onclick=\"submit()\" class=\"bold\">cancella messaggi selezionati</a></td>
      </tr>
      <tr class=\"anteprima\">
                  <td class=\"tabellacentraleAlto\" colspan=\"7\"><img  alt=\"\" src=\"img/pixel_trasparente.gif\" width=\"1\" height=\"10\"  border=\"0\"></td></tr>
    </table>
    </td>
      </tr></table></form> 
    l'utente ke cekka il box vuole cancellare un messaggio. Ho fatto la pagina su cui dovrebbe andare con una query UPDATE
    Codice PHP:
    $query_deletemsg "UPDATE messaggi SET visualizza='no' WHERE id=" $_POST['idmessaggio'];
    $result mysql_query($query_deletemsg$db);
    $row mysql_fetch_array($result);
    echo
    "RISPOSTA"
    ma non mi lavora anzi,stampando la query nella pagina di risposta viene scritto

    codice:
    UPDATE messaggi SET visualizza='no' WHERE id=Array
    non so come uscirci..devo fare un array? COME?!??!
    e siccome c'è pure un cek che dovrebbe selzionarli tutti...come deve lavorare lui???
    se qualcuno mi sa aiutare..grazie!

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    $_POST['idmessaggio'];

    è un array multidimensionale.

    name=\"idmessaggio[]\" value=\"$row[visualizza]\"

    Sarà quindi $_POST['idmessaggio']['contenuto di $row['visualizza']]

    Quando stampi la query stampa anche:

    echo "<pre>";
    print_r($_POST);

    e vedi come è composto l'array.


  3. #3
    la query l'ho corretta così e quello che è venuto scritto è questo...xò me ldo dovresti tradurre :master:
    codice:
    $query_deletemsg = "UPDATE messaggi SET visualizza='no' WHERE id=" . $_POST['idmessaggio']['visualizza'] ;
    la risposta ke mi ha dato la pagina è
    codice:
    UPDATE messaggi SET visualizza='no' WHERE id=;
    Array
    (
        [idmessaggio] => Array
            (
                [0] => si
            )
    
    )

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    L'array $_POST è composto così per la parte che ti riguarda:

    $_POST [indice associativo => idmessaggio]
    idmessaggio => [indice numerico 0] => valore = si

    Quindi: $_POST['idmessaggio'][0].

    WHERE id=" . $_POST['idmessaggio'][0] ;


  5. #5
    ma sei io faccio come dici te e scrivo
    codice:
    $query_deletemsg = "UPDATE messaggi SET visualizza='no' WHERE id=" . $_POST['idmessaggio'][0] ;
    la risposta che mi da è
    codice:
    UPDATE messaggi SET visualizza='no' WHERE id=si;
    Array
    (
        [idmessaggio] => Array
            (
                [0] => si
            )
    
    )
    e non cambia niente

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    Ora che hai visto che contiene l'array puoi anche togliere print_r

    Ma la query la fai? Mi sa di no.

    Anzi, SI, la fai.

    WHERE id=" . $_POST['idmessaggio']['0'] ;

    metti gli apici anche all'indice 0 perchè è una stringa.


  7. #7
    Originariamente inviato da pierotto
    Ora che hai visto che contiene l'array puoi anche togliere print_r

    Ma la query la fai? Mi sa di no.


    la query c'è si è così
    Codice PHP:
    $query_deletemsg "UPDATE messaggi SET visualizza='no' WHERE id=" $_POST['idmessaggio']['visualizza'] ;
    $result mysql_query($query_deletemsg$db);
    $row mysql_fetch_array($result);
    echo
    "RISPOSTA"

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    Originariamente inviato da fabioandr@libero.it
    la query c'è si è così
    Codice PHP:
    $query_deletemsg "UPDATE messaggi SET visualizza='no' WHERE id=" $_POST['idmessaggio']['visualizza'] ;
    $result mysql_query($query_deletemsg$db);
    $row mysql_fetch_array($result);
    echo
    "RISPOSTA"
    modifica:

    WHERE id=" . $_POST['idmessaggio']['0'] ;


  9. #9
    fatto ma..non cambia niente, stampando la query scrive cosi
    codice:
    UPDATE messaggi SET visualizza='no' WHERE id=si;

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    534
    codice:
    ....WHERE id='{$_POST['idmessaggio']['0']}'" ;
    
    ...WHERE id=" . $_POST['idmessaggio']['0'] ;
    Queste due forme sono identiche. Ti devono rendere:

    WHERE id='si';

    SI deve risultare tra apici. Controlla bene.

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.