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

    creare form con pulsante aggiungi +

    Salve,
    spero di essere nella sez. giusta.
    Allora devo creare tanti form per l'inserimento dati quanti sono i dati da inserire, solo che inizialmente non so quanti ne devo inserire (scusate il gioco di parole). In molti siti ho visto che si può generare un form con il tasto +, si scrive il dato poi se ne serve un'altro spingo di nuovo + e così via. Qualcuno sa come fare o dove reperire materiale.
    Uso PHP/XHTML/CSS

    Grazie

  2. #2
    Dovresti usare, javascript, con jQuery.append.
    ecco come:
    codice:
    <html>
    <head>
    
    <style>
    	body{padding:0;
    		margin:0;}
    	#insert{/*È il campo con il textfield da riempire con il nome che si vuole dare al campo che si sta per creare */
    		padding:0;
    		margin:0;
    		position:absolute;
    		left:50%;
    		top:50%;
    		background-image:url(img/BR1Back2.gif);
    		margin-left:-150px;
    		margin-top:-150px;
    		width:300px;
    		height:190px;
    		display:none;
    		opacity:1;
    		text-align:center;
    		padding-top:110px;
    		}
    	#over_flow{/*Serve per creare un piccolo effetto overFlow per creare il campo*/
    		padding:0;
    		margin:0;
    		position:absolute;
    		width:100%;
    		height:100%;
    		background-color:#666666;
    		opacity:0.8;
    		display:none;
    		}
    	.plus{/*Mi gestisco gli effetti sul simbolo più per renderlo "più interattivo"*/
    		cursor:pointer;
    		}
    	.plus:hover{
    		text-decoration:underline;
    		}
    
    </style>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.js"></script>
    <script>
    
    	function nascondi(){//Nascondo i div Overflow(un mega div con trasparenza per creare il distacco dal resto della pagina) e Insert un div con il campo da riempire con il nome del campo che stiamo per creare, viene richiamata quando clicco sull'overFlow
    		$('#insert').fadeOut(0,0);
    		$('#over_flow').fadeOut(0,0);
    	}
    	function mostra(){// funzione iinversa di quello sopra, viene chiamata quando si clicca su uno dei più che stanno accanto ai campi
    		$('#insert').fadeIn(0,1);
    		$('#over_flow').fadeIn(0,1);
    	}
    	
    	function crea(){//WOWOWO ci siamo Funzione cre richiamata quando clicco su "Crea Campo"
    		var name=$('#nome_campo_nuovo').val();//Prendo il valore del campo con id=nome_campo_nuovo
    		name=name.split(' ').join('_')//Sostituisco gli spazi con gli _(underscore) nel contenuto della variabile name
    		if(name!=null && name!="" && name!="_"){//se la variabile name contiene altro oltre ad un underscore o se NON contiene ""(cioè se non contiene il non nulla) allora:
    		$('form').append("<label>"+name+"</label><input type='text' name='"+name+"' id='"+name+"'/><span class='plus' onclick='mostra()'>+</span> ");//appendo al div con id=campi nuovi il codice che mi crea un nuovo textField che ha come label  e come name e id il nome inserito nel apposito campo
    		}
    		else// la variabile name è nulla o vuota o ha un solo _(underscore) allora mi fa un alert e mi avverte dell'errore.
    		alert('Nome campo errato!');
    		nascondi();
    		}
    </script>
    </head>
    <body background="img/bg.png" text="#FFFFFF">
    <div id="over_flow" onclick="nascondi()"></div>
    <div id="insert">
    <label>Nome campo:</label><input type="text" name="nome_campo_nuovo" id="nome_campo_nuovo" />
    
    Crea Campo
    </div>
    <div>
        <form action="img/tuapagina_php.php" method="post">
        <label>Nome</label><input type="text" name="nome"  /><span class="plus" onclick="mostra()">+</span> 
        <div id="campi nuovi"></div>   
        </form>
    </div>    
    </body>
    </html>


    E nella pagina php quando ricevi i dati inviati dal form tramite GET o POST dovrai scorrere l'array POST per vedere che cosa ti entra e che nome ha.. oppure crei nello script di Javascript un sistema che ti crea i campi con id sequenziale, resta il problema di identificare il campo se fai così... oppure fai tu delle checkbox con varie scelte senza far viaggiare troppo di fantasia i tuoi utenti. e tu hai un range di ID, chiaramente ogni id si può ripetere solo una volta quindi dovrai disabilitare la check box... queste sono solo miei consigli l'esempio ce l'hai... ciao!

    Credo nelle idee che diventano azioni. [E. Pound]
    Le cose perdonabili sono, in verità, pochissime. [Y. Mishima]

  3. #3
    Aspetta ti commento un po' il codice senò non capisci nulla
    Commentato!

    N.B.: Se lo copi e incolli in una semplice pagina html Funziona di già. MAncano solo i due file di BackGround, ma non erano poi così belli da fare una cartella compressa e lincartela... Mettici i tuoi BG e fammi sapere! che voglio vedere dove finiscono i miei script! ;D
    Credo nelle idee che diventano azioni. [E. Pound]
    Le cose perdonabili sono, in verità, pochissime. [Y. Mishima]

  4. #4
    ok grazie, ora cercherò di utilizzarlo per inserire i valori in mysql

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.