oon tekemässä lomake generaattoria joka kysyy ensin formin kenttien määrän ja sitten nimet kentille sekä kenttien tyypit. tietojen tallentamiseen käytän mysql tietokantaa. ongelma on että miten saan lomakkeiden nimet talletettua niin että ne saadaan haettua oikeisiin paikkoihin tietokannasta.
tässä koodia mitä oon tehny
eka sivu jossa kysytään kenttien määrä
<?php <head> <title>tietokanta lomake generaattori</title> </head> <body> <?php $yhteys = mysql_connect("localhost","***","***") or die("Connection failed, please try again later!"); #mysql_select_db("perkele") or die ("Could not select database"); mysql_query("CREATE DATABASE IF NOT EXISTS ****"); mysql_select_db ("***") or die ("Could not select database".mysql_error()); #mysql_query ("CREATE TABLE tieto (id INT NOT NULL AUTO_INCREMENT,valikot INT(4)NOT NULL,PRIMARY KEY(id))"); ?> <h1 align="left" > lomake generaattori</h1> <b> valitse valikosta tekstikenttien määrä </b> <table> <tr><td>anna kenttien määrä </td></tr></table> <form action="testi2.php" method="get"> <input type="text" name="valikot" value=" "> <input name="submit" type="submit" value="submit"> <input type="reset" value="Clear"> </FORM> <?php if (isset($_GET['submit'])) { $yhteys = mysql_connect("localhost","***","***") or die("Connection failed, please try again later!"); mysql_select_db("****") or die ("Could not select database"); // tehdään väliaikainen taulukko kenttien määriä varten mysql_query(" CREATE TEMPORARY TABLE valinta (id INT(3) NOT NULL AUTO_INCREMENT, VALIKKOT INT (3),PRIMARY KEY(id))"); $lkm=$_GET['valikot']; $id=$_GET['id']; $kysely = mysql_query("INSERT INTO valinta SET id='$id', valikot='$lkm'"); $result = mysql_query($kysely); } ?> </body> </html> ?>
toka sivu joka tulostaa kentät mihin pitäs kirjottaa sitten nimet kentille ja jatkaa eteenpäin. eli kentät siis tulostuu oikein
<?php <head> <title>lomake</title> </head> <body> <?php $yhteys = mysql_connect("localhost","***","***") or die("Connection failed, please try again later!"); mysql_select_db("***",$yhteys) or die ("Could not select database"); $lkm=$_GET['valikot']; $id=$_GET['id']; $kysely = mysql_query("SELECT valikot FROM valinta WHERE valikot='$lkm'"); $result = mysql_query($kysely); #echo $lkm; $field=1; echo"<table cellspacing=8 cellpadding=0 border=0>"; for ($i=1;$i<=$lkm;$i++) { echo "\t<tr>\n"; } echo "syötä kentien nimet\n"; //tulostetaan tekstikentät for ($j=1; $j<=$lkm;$j++) { echo "<form action='lomake2.php' method=get>"; echo "\r<tr><td><input type=name name='nimi[$j]' ></td></tr> \n"; } echo "<tr><td><input type='submit' type='supmit' value='send'></td></tr>"; # echo "\t\t<td><input type=text name=lomake value=' '> </td>\n"; echo "\t</tr>\n"; echo "</table>\r"; if (isset($_POST['submit'])) $yhteys = mysql_connect("localhost","***","***") or die("Connection failed, please try again later!"); $jee = mysql_select_db("***",$yhteys) or die ("Could not select database"); // tehdään taulukko kenttiä varten $qsl=" CREATE TABLE IF NOT EXISTS kentat (id INT(3) AUTO_INCREMENT,name TEXT(15),maara INT(3),PRIMARY KEY(id))"; mysql_query($qsl) or die(mysql_error()); $kentta=$_GET['field']; $nimi[$j]=$_GET['$nimi[$j]']; $id=$_GET['id']; $kysely1 = mysql_query("INSERT INTO kentat (id,name,maara)". " VALUES ('$id','$nimi[]','$kentta')"); $result = mysql_query($kysely1); mysql_close(); ?> </body> </html> ?>
Aihe on jo aika vanha, joten et voi enää vastata siihen.