Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    292

    inserire dei campi senza conoscere a priori il numero

    Ciao ragazzi ho un problema urgentissimo,
    in pratica sto realizzando un tariffario in php per il cliente dove dal suo pannello di controllo lui può comodamente inserire le sue tariffe.
    Il sistema funziona così:

    - Il cliente s'inserisci prima tutte le camere tramite un form (fin qui nessun problema)

    - Il cliente dopo aver inserito le camere s'inserisce e periodi che saranno di un numero x (fin qui nessun problema)

    - dopo aver inserito le camere e i periodi con due "cicli for" ho fatto stampare gli imput che sono tanto quanto i periodi e le camere
    es.


    dal 10/05/07 al 25/08/07 | dal 10/09/07 al 25/010/07 | dal 10/11/07 al 25/12/07

    singola
    doppia


    ecco adesso ho un piccolo problema, come faccio a memorizzare dei valori dentro un numero campi che non conosco a priori? perchè i periodi potranno essere anche di più di quelli messi nell'esempio lo stesso vale per le camere.
    E' da una settimana che ci sbatto la testa, vi prego di aiutarmi.
    Potreste farmi anche un esempio pratico?

    Grazie
    M4tt86

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361
    non ho capito bene l'esempio... ma è bene tipo chiamare gli input cosi per esempio


    <input... name="periodo_1".... />

    ti salvi un input hidden il numero di periodi...

    <input type="hidden" name="periodi" value="<?=$periodi?>i" />

    e poi nella pagina php in cui processi i dati ricevuti..
    ti fai un for di $_GET/POST['periodi']

    e li prendi a tuo piacimento..
    codice:
    for($i = 0; $i <= $_GET/POST['periodi']; $i++){
     echo($_GET/POST['periodo_$i']);
    }
    spero di aver capito quello che vuoi fare

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    292
    Ciao trusthat,
    grazie per la risposta tempestiva, avevo già fatto quello che mi avevi detto ma purtroppo non ho avuto risultati positivi, per capire meglio ti ho postato il codice, non capisco dove sbaglio, saresti così paziente di aiutarmi a correggerlo?

    ecco il link della pagina interessata:



    clicca qui

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361
    mhhh.. non c'ho capito molto..

    questo pezzetto di codice

    Codice PHP:
    for ($k=1;$k<8;$k++) {
    if ((isset(
    $_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
    $i++;
      
    $insertSQL sprintf("INSERT INTO prezzi (huser, numero, camere, periodi) VALUES (%s, %s, %s, %s)",
                           
    GetSQLValueString($_POST['huser'], "text"),
                           
    GetSQLValueString($_POST ['numero$i'], "text"),
                           
    GetSQLValueString($_POST ['camere$i'], "text"),
                           
    GetSQLValueString($_POST ['periodi$i'], "text"));

      
    mysql_select_db($database_db$db);
      
    $Result1 mysql_query($insertSQL$db) or die(mysql_error());
    }

    praticamente da per scontato che ci siano 7 periodi$i?
    periodi1
    ...
    periodi7?

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    292
    No scusa ho sbagliato, a posto di 7 dovrò metterci la variabile $totale, ho messo 7 per fare la prova se inseriva

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361
    e non funziona lo stesso?
    non dovrebbe inserirti #$totale record in prezzi?

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361
    ti suggerisco di commentare la prox volta...

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    292
    No non mi funziona, inserisce "NULL" nel database

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361
    Codice PHP:
                                    <tr><?php $k=0
                                                 do { 
    ?>
                                                    <td height="22">
                                                    <?php $k++; ?>
                                                    <?php $p="periodi".$k ?>
                                                    <input name="<?php echo $p?>" type="hidden" value="<?php echo $row_periodi['tempo']; ?>" /><?php echo $row_periodi['tempo']; ?></td>
                                                    <?php } while ($row_periodi mysql_fetch_assoc($periodi)); ?>
    controlla questo do... al primo passaggio non ha niente da stampare nel value..
    riformulalo con un while con controllo in testa..magari cambia qualcosa

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    292
    Niente da fare trusthat,
    ho provato e questa volta mi stampa NULL più volte, i do while che ho utilizzato li ho messi per fare in modo che mi stampi periodo1, periodo2, periodo3 .... e camera1, camera2, camera3... stessa cosa per numero, il problema credo che sia ne ciclo for dell' INSER INTO perchè non mi convince la $i che ho utilizzato, ma non trovo soluzione e soprattutto non so se sto sbagliando sintatticamente.

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.