I am trying to insert multiple text fields into a MySQL database for my music collecition
for ($i=1; $i <= $album_number_of_songs; $i++)
{
print "echo $i; <input type = 'text' name = 'song_$i_name' size = '20'>";
print "<P>";
}
//this will create the text boxes based on the album_number_of songs
To insert the data is where I need some help:
for ($i=1; $i <= $album_number_of_songs; $i++)
{
$namevar = "song";
$namevar = $namevar . $i;
$namevar = $namevar . 'name';
$insert_songs = mysql_query("INSERT INTO TEST (song_name) VALUES ('$namevar')") or die ("not inserted, songs");
//this is inserting song_1_name, song_2_name, etc. into the database.
another user suggested trying this:
use an array,
for ($i=0;$i<$num_of_songs_you_want_to_enter;$i++)
{
Song name:<input type=text name=song_name[]><p>
song length:<input type=text name=song_length[]><p>
etc
}
Then in your target script:
$values="";
$i=0;
while (song_name[$i]!="") // don't have to worry if not all form elements used
{
if ($i!=0) $values.=",";
$values.="('$song_name[$i]','$song_len[$i]',$album_id[$i],$artist_id[$i],$song_number')";
}
$query="insert into songs (song_name, song_length) VALUES $values";
$result=mysql_query($query);
This has not worked either, I am getting an error on :
while (song_name[$i]!="")
sam