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

    tabella dinamica e submit con PHP

    Salve, ho una domanda da fare:
    ho bisogno di creare una tabella dinamica, la quale viene incrementata di righe quando l'utente clicca su un pulsante, io ho scritto questo codice:


    <script type="text/javascript">
    function insertRowPHP()
    {
    var tbl = document.getElementById('tblInsertRowPHP');
    var iteration = tbl.tBodies[0].rows.length;
    newRow = tbl.tBodies[0].insertRow(-1);
    var newCell = newRow.insertCell(0);
    newCell.innerHTML =iteration+1;
    var newCell1 = newRow.insertCell(1);
    var newCell2 = newRow.insertCell(2);
    var el = document.createElement('input');
    var el1= document.createElement('input');
    el.type = 'text';
    el.name = 'txtRow[]';
    el.id = 'txtRow' + iteration;
    el.size = 40;
    el1.type = 'text';
    el1.name = 'txtRow[]';
    el.id = 'txtRow' + iteration;
    el1.size = 40;
    newCell1.appendChild(el);
    newCell1.appendChild(el1);
    }
    </script>
    Ora il problema è che non riesco a postare tutto il contenuto delle righe aggiunte.

    Per cui se per esempio la tabella ha 4 colonne ed n righe quando l'utente clicca su submit, il form deve puntare su una script php il quale deve prendere il contenuto della tabella riga per riga in modo da essere salvato su DATABASE.

    Spero di aver spiegato il problema. Spero qualcuno riesca ad aiutarmi!!!

  2. #2
    Scusa, ma non ho capito quale sia il problema. Il tuo codice funziona? Tu aggiungi le righe, ma quando fai submit della pagina non ottieni i dati? Dai qualche informazione in più

    Comunque, non fai nulla per cancellare la riga inserita? Se uno sbaglia ed inserisce una riga che non gli serve che fa, la lascia in bianco?

  3. #3

    submit via php

    Grazie per aver risposto, non ho inserito il codice per la cancellazione della riga. Quello che mi interessa è che se l'utenti inserisce 4 righe e le compila i dati devono essere mandati via POST su file PHP in grado di leggerli tutti.

    esempio:

    l'utente scrive su la 1 riga:
    1. ciao
    2. pippo

    seconda riga:

    1. addio
    2. pluto

    risultato in una pagina php attraverso $_POST:

    $a=array[0];
    $b=array[1];
    e ancora:

    $a=array[0];
    $b=array[1];

    questo finche non ho letto tutte le righe inserite e copiate in DataBase.


    Inserisco un pezzo di codice in PHP che mostra il tutto ma partendo da una tabella statica, così magari sono più chiaro:


    //file: a.php
    <form method="post" action="b.php">
    <?php
    //Creazione campi
    //Possiamo anche aumentare il numero dei campi
    for($i = 1; $i <= 4; $i++){
    ?>
    <input type="hidden" name="id_<?php echo $i;?>" value="<?php echo $i;?>">
    <?php echo $i;?>) Nome: <input type="text" name="nome_<?php echo $i;?>">
    Tel: <input type="text" name="tel_<?php echo $i;?> ">
    a: <input type="text" name="a_<?php echo $i;?> ">
    <hr>
    <?php
    }
    ?>
    <input type="submit" value="Invia Dati">
    </form>



    //file b.php

    <?php
    //Richiamo tutte le variabili
    $vars = get_defined_vars();
    //Array contenente tutte le variabili
    $my_array = array();
    //Popolo l' array
    foreach($vars['_POST'] as $key => $val){
    array_push($my_array, $val);
    }
    //Configuro la visualizzazione
    $no_field = 4; // Numero dei campi inviati x ogni record
    $size = (count($my_array) / $no_field); //Numero dei Records
    $start = 0; //Record iniziale
    for($i = 1; $i <= $size; $i++){
    //Prelevo i dati del record
    $id = $my_array[$start];
    $nome = $my_array[$start + 1];
    $tel = $my_array[$start + 2];
    $a=$my_array[$start + 3];

    //Visualizzo i Dati
    echo "[*]ID:" . $id;
    echo "[*]NOME:" . $nome;
    echo "[*]TEL:" . $tel;
    echo "[*]A:" . $a;

    echo "<hr>";
    //Passo al prossimo record
    $start = $start + $no_field;
    }
    ?>


    Grazie

  4. #4
    Scusa se te lo dico, ma guarda che quel codice non genera una tabella, ma una serie di righe divisa da un HR, chiaramente non potrà mai funzionare un codice che utilizza i metodi per la manipolazione delle tabelle.

  5. #5
    Si, OK, il codice non genera una tabella perchè non c'è il <table></table>, ma la morale non cambia, se hai una risposta alla mia domanda ti ringrazio....

  6. #6
    Ecco, appunto, non ho ancora capito la tua domanda:
    E' la funzione Javascript che non funziona, o la function JS va ma quando fai il submit non ottieni i dati?

  7. #7
    ecco esatto quando clicco su submit non riesco a tirare fuori i dati. (la seconda che ha detto te).

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.