Witam, jestem zielony w temacie (pewnie dlatego przedszkole) i mam problem, który spędza mi sen z powiek.
Mam formularz, którego ilość pól jest zależna od użytkownika. Przesyłam go metodą POST do pliku save.php, gdzie mam pętlę z instrukcjami wyświetlenia danych i zapisania rekordów do bazy. Problem w tym, ze choć dane wyświetlają się poprawnie, to do bazy danych zapisywany jest tylko jeden, pierwszy rekord.
Trochę kodu:
Najpierw kasuję istniejącą tabelę (w pliku z formularzem), żeby zaczynać zawsze od zera.
<?php
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
// drop table
mysql_select_db("bartosz_pub", $con);
$sql = "DROP TABLE IF EXISTS football";
mysql_select_db( 'bartosz_pub' );
$retval = mysql_query( $sql, $con );
if(! $retval )
{
die('Could not delete table: ' . mysql_error());
}
mysql_close($con);
?>
Następnie w pliku wynikowym tworzę ją na nowo:
<?php
if (!$con)
{
}
// Create table
$sql = "CREATE TABLE football
(
team1 char(25),
team2 char(25),
channel char(15),
date int,
PRIMARY KEY(date),
time varchar(4),
display int
)";
// Execute query
if ($create) echo"great"; ?>
No i mam pętlę, która uzupełnia (a przynajmniej powinna) bazę o wpisy:
<?php
<span id
="intelliTxt"><pre
class="alt2" style
="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 640px; height: 450px;">$counter = count($_REQUEST)/5; for ($i=1; $i<=$counter; $i++){
@$team1 = $_POST['team1'.$i];
print "<td>".$team1."</td>"; @$team2 = $_POST['team2'.$i];
print "<td>".$team2."</td>"; @$channel = $_POST['channel'.$i];
print "<td>".$channel."</td>"; @$date = $_POST['theDate'.$i];
print "<td>".$date."</td>"; @$time = $_POST['time'.$i];
print "<td>".$time."</td>"; $save = "INSERT INTO football(team1,team2,channel,date,time,display) VALUES ('$team1','$team2','$channel','$date','$time','0');";
$save = "INSERT INTO football(team1,team2,channel,date,time) VALUES ('$team1','$team2','$channel','$date','$time');";
}
?>
No i pupa, że się tak wyrażę. W bazie jest tylko 1 rekord - pierwszy wiersz.
Formularz w praktyce jest na www.bartosz.dk/pub