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

    Ciclo for e ricaricamento pagina

    Ciao ragazzi
    Vorrei ottenere una tabella con campi inserimento dati per mezzo di un ciclo FOR , però questo non deve essere eseguito fino alla fine, ma deve essere messo diciamo in “pausa” fino a quando con il pulsante di invio dati del form o con altro metodo oltre a manipolare i dati, non lo faccio ripartire.
    In pratica assumendo che devo fare un ciclo 3 volte, al primo giro vorrei ottenere una tabella di campi inserimento dati con tanto di pulsante di invio, ma solo dopo aver premuto questo pulsante potrei ricaricare la tabella (che avrebbe gli stessi campi con indice 2).

    Si può fare con PHP ?

    Sono partito da questa base (vi posto il codice)

    <form action="inserimento_dati.php" method="post">
    <table width="100%" height="100%" border="0" cellpadding="3" cellspacing="3">
    <tr>
    <td colspan="2" align="center">Inserimento dati per database concorso.</td>
    </tr>
    <?php
    $numero_immagini=3;
    for ($ciclo=1;$ciclo<=$numero_immagini;$ciclo++){
    include('maschera_inserimenti.php');?>
    <?php
    }
    ?>
    </table>
    </form>

    ---maschera_inserimenti.php--- //il codice l’ho messo in questo file a parte solo per isolare le due cose

    <tr>
    <td width="30%" align="left">Inserimento Record Nr <?php echo $ciclo ?></td>
    </tr>
    <tr>
    <td width="30%" align="left">Nome dell'autore</td>
    <td width="70%" align="left"><input type="text"size="50" Name="nome_utente"<?php ($ciclo);?>></td>
    <tr>
    <td width="30%" align="left">Descrizione foto</td>
    <td width="70%" align="left"><textarea name="Descrizione"<?php ($ciclo);?> cols="50" rows="10"></textarea>
    </td>
    </tr>
    <tr>
    <td>
    </td>
    <td align="left"><input type="submit" name="AggiungiRecord"<?php ($ciclo);?>
    value="Aggiungi"><?php Print ("( Record ) $ciclo");?>
    </td>
    </tr>

    Ovviamente se lo mando in esecuzione, il ciclo for viene completato fino alla fine e sulla pagina mi ritrovo per 3 volte gli stessi campi di inserimento (anche se con indice diverso).
    Invece come detto prima vorrei proprio caricare i campi la prima volta, dopo aver premuto il pulsante “Aggiungi” caricare i campi la seconda volta, e dopo un’altra pressione del pulsante “Aggiungi” caricare i campi per l’ultima volta. (sempre che poi si possa fare un refresh sulla pagina html ospita questi campi)

    Scusatemi se trovate errori di concetto o di sintassi nel codice, ma in effetti sto ancora cercando di capire come fare.
    Ho messo anche un’istruzione “break” dopo il pulsante “Aggiungi” (che ora ho tolto), ma in effetti l’ho tolto perché non sapevo come ripartire

    In ogni caso se avete qualche suggerimento in merito,o un'altro sistema per ottenere questo, vi ringrazio.

    A presto
    Paolo

  2. #2
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746
    E' il concetto che è sbagliato. La pagina viene processata sul server ed in questa ottica il ciclo for come lo vuoi usare tu non ha senso in quanto la sua funzione è appunto di eseguire tutti i suoi cicli.

    più che altro non hai spiegato bene cosa devi fare. mi sembra che vuoi far inserire agli utenti 3 immagini. ma come gestisci gli utenti ? su file, su database ?
    Errare humanum est, perseverare ovest

  3. #3
    Ciao Carlo
    ti ringrazio per la risposta
    In effetti ho tralasciato la gestione dei dati perchè pensavo fosse piu' importante per ora risolvere il meccanismo di inserimento dati.
    Comunque tutti i dati saranno inviati ad un database.
    Ad ogni modo Carlo se ci riesco cerco di spiegare nuovamente cosa vorrei ottenere, ma questa volta lo descrivo vedendolo dalla parte dell'utente.
    Praticamente l'utente si trova davanti una pagina dove deve inserire dei dati in alcuni campi che poi ovviamente saranno trasferiti nel database come Record1.
    L'utente preme il pulsante invio, dopodichè gli si ripropone nuovamente una pagina (sempre la stessa) dove l'utente deve inserire nuovamente dei dati negli stessi campi, ma questi (seguendo il ciclo for di cui avevo in mente) dovrebbero essere trasferiti nel database come Record2, e cosi via fino ad esaurimento del ciclo.
    Spero che adesso si capisca meglio quello che vorrei ottenere, cioè scrivo e invio una volta, scrivo e invio la seconda volta, ecc......fino a che ho esaurito il ciclo.
    Non posso fare tutto il ciclo completo su una pagina, perchè se per ogni ciclo genero 5 campi di inserimento, assumendo che il ciclo for sia ad esempio 10, otterrei 50 campi di inserimento...............insomma troppo caotico.
    Ovviamente ripeto che se c'è un'altra idea o un'altro sistema per fare questo ben venga
    Grazie di nuovo a te e a tutti quelli che leggeranno
    a presto
    Paolo

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.