テーブルの内容を表示する関数を作成しました。これは機能です:
function query_tabel ($sql){
$query = $sql;
$result = mysql_query($query);
$kolomen_tellen = mysql_num_fields($result);
if (!$result) {
die("Error Query: " . mysql_error());
}
print "<table border=1>\n";
print "<tr>";
for ($column_num = 0; $column_num < $kolomen_tellen; $column_num++)
{
$fieldname = mysql_field_name($result, $column_num);
print "<TH>$fieldname</TH>";
}
print "</tr>";
while ($row = mysql_fetch_row($result)) {
print ("<TR>");
for ($column_num = 0; $column_num < $kolomen_tellen; $column_num++)
print ("<TD>$row[$column_num]</TD>\n");
print ("</TR>\n");
}
print "</table>";
それは機能し、任意のファイルでいつでも関数を呼び出すことができます。しかし、入力フィールドを持つ編集フォームを作成する別の関数が必要です。
これは私の最初のドラフトです:
function query_tabel_edit ($sql, $filename){
$query = $sql;
$result = mysql_query($query);
$kolomen_tellen = mysql_num_fields($result);
if (!$result) {
die("Error Query: " . mysql_error());
}
print "<table class=edit>\n";
print "<tr>";
for ($column_num = 0; $column_num < $kolomen_tellen; $column_num++)
{
$fieldname = mysql_field_name($result, $column_num);
print "<TH class=edit>$fieldname</TH>";
}
print "</tr>";
while ($row = mysql_fetch_row($result)) {
print "<form action=$filename method=post>";
print ("<TR>");
for ($column_num = 0; $column_num < $kolomen_tellen; $column_num++)
print ("<TD class=edit> <input class=edit type=text name=$row[$column_num] value=$row[$column_num] </TD>\n");
print ("<TD class=edit> <input class=edit type=submit name=update value=edit> <TD>\n");
print ("</TR>\n");
}
print "</table>";
}
だから私は編集リンクを追加しました、魅力のように機能しますが、レコードを変更するSQL行を作成してどこに置くのですか?
このedit sqlステートメントを作成する方法と、関数または関数を呼び出すPHPファイルのどこかにdata sql行を配置する必要がありますか?