Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    155

    Problema a recuperare l'id

    Ciao a tutti, ho creato questo script:

    Codice PHP:
    $database=mysql_select_db("moto",$link);
    $sql="select * from allievo where all_nome is not null";

    $tutto=mysql_query($sql,$link);
    echo 
    "<table border=1 align=center width=100%>";
    while (
    $valori=mysql_fetch_array($tutto)) {
        echo 
    "<tr>";
        for (
    $i=0;$imysql_num_fields($tutto);$i++) {
            echo 
    "<td>$valori[1]</td>";
            
        }
        echo(
    "<input type='text' name='sig' value='".$valori['id']."'>");
        echo(
    "<td><input type='submit' value='Modifica...' value='".$valori[0]."'></td>");
        echo 
    "</tr>";
    }
    echo 
    "</table>"
    Il mio problema è che vorrei che il pulsante prendesse solamente l'id della riga in cui mi trovo, e non tutti gli id.
    Come potrei fare?
    Altra domanda: una volta che io ho l'id (se ce la farò) è possibile far sì che quando clicco il pulsante mi apra la riga collegata con quell'id in modalità di modifica?

    Grazie mille

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    si, ma è richiesto l'utilizzo di javascript.

    Ad esempio puoi fare una funzione che raccolga l'id e faccia il submit del form, del tipo:

    codice:
    ...
    ...
    <head>
    <script type="text/javascript">
    function modifica(id) {
      var inputObj = document.getElementById('form');
      var form = document.getElementById('form');
      inputObj.value  = id;
      form.submit();
    }
    </script>
    </head>
    <body>
    <form .....>
    <input type="hidden" name="campo_nascosto_id" value="">
    <table>
    <tr>
     <td>...</td>
     <td>)">Modifica</td>
      ...
    ...</form>

    Il codice è molto approssimativo e non credo funzioni se copiato e incollato, ma è giusto per darti uno spunto..

    La pagina di target del form sarà quella che esegue la modifica.

    Ciao

  3. #3
    puoi farlo anche in PHP, basta (!) che crei un form per ogni record e quando clcichi sul SUBMIT la pagina viene ricaricata e le viene passato l'ID del record, e verrà quindi visualizzato l'intero record per la modifica.

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Originariamente inviato da Emulman
    puoi farlo anche in PHP, basta (!) che crei un form per ogni record e quando clcichi sul SUBMIT la pagina viene ricaricata e le viene passato l'ID del record, e verrà quindi visualizzato l'intero record per la modifica.
    si vero, ma non so perchè non mi sembra bello fare cosi tanti form in una pagina sola...

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    155
    Grazie adesso provo con javascript...
    Ma se volessi che mi restasse nella stessa pagina sarebbe possibile farlo?

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    In primis c'è un errore... il tuo tag "input" non è dentro i tag <td></td>

    Inoltre quello che chiedi si può fare senza disturbare javascript, basta mettere il tuo input+pulsante dentro un proprio <form></form>, in questo modo

    Codice PHP:
    $database=mysql_select_db("moto",$link);
    $sql="select * from allievo where all_nome is not null";

    $tutto=mysql_query($sql,$link);
    echo 
    "<table border=1 align=center width=100%>";
    while (
    $valori=mysql_fetch_array($tutto)) {
        echo 
    "<form action='xxx.php' method='post'>";
        echo 
    "<tr>";
        for (
    $i=0;$imysql_num_fields($tutto);$i++) {
            echo 
    "<td>$valori[1]</td>";
            
        }
        echo(<
    td>"<input type='text' name='sig' value='".$valori['id']."'></td>");
        echo(
    "<td><input type='submit' value='Modifica...' value='".$valori[0]."'></td>");
        echo 
    "</tr>";
        echo 
    "</form>";
    }
    echo 
    "</table>"

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    155
    Perfetto, grazie mille a tutti, adesso mi pende l'iD, ma qualcuno sa se è possibile a questo punto non passare su un altro form ma quando io clicco su modifica mi apre i vari campi corrispondenti all'ID scelto in modalità modifica? Ad esempio i campi diventano degli input type text?

    Es
    nome1 cognome1 bottone_modifica1
    nome2 cognome2 bottone_modifica2

    Se clicco su bottone_modifica2 mi apre nome2 e cognome 2 come text input.
    Grazie ancora




  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    javascript

    Oppure riapri la stessa pagina e ad ogni riga metti una if che ti dice se vuoi "campo" o "label"

  9. #9
    potresti afre un unico form con righe ognuna delle quali contiene un textbox e un puslante; quando clicchi sul puslante una routine javascript ricarica la pagian e passa l'ID di quel record e un aparemtro chessò SW=1.
    Fai un controllo alla ricarica della pagina: se SW=1 allora hai ricaricato la pagina, quindi visualizza un form col record con quel ID passato; se SW=0 la pagina non è stata caricata e allora visualizza il form con i texbox e i pulsanti.

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.