0

だから私はデータベースaddressbook1のcolegueと呼ばれるmysqlにこのテーブルを持っています。次のフィールドがあります:colegue_id、firstname、lastname、telephone、email。私が欲しいのは、名の列内のデータを取得し、チェックボックスを使用するフォーム内に表示することです。たとえば、
チェックボックスジェリー
チェックボックスメアリー
チェックボックスシンディ
などです。次に、チェックされたデータは、選択されたデータをエコーするスクリプトに送信されることになっています。ページにデータをロードするコードは次のとおりです。

 <?php
 //connect to mysql
mysql_connect("localhost", "root", "");
//select database
mysql_select_db("adressbook1");
//select data from table
$query=("SELECT * FROM colegue");
//perform query
$result=mysql_query($query);
?>
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>testing</title>
</head>
<body>
<h3>testing a checkbox form</h3>

<?php
//start the form
echo "<form method=\"post\" action=\"process.php\">";
while($row=mysql_fetch_array($result)) 
{
//assign value from associative array to variable
$data=$row['firstName'];
/*echo data and assign the value in the input the current value of $data while loading     onto array*/
echo "<input type=\"checkbox\" name=\"firstname[]\" value=\"<?php $data;?>\">".$data."    <br>";

}
echo "<br>";
//send data to process.php when clicked
echo "<input type=\"submit\" name=\"sent\" value=\"add\">";
echo "</form>";
?>
</body>
</html>

次に、データを処理するスクリプトの場合:

<?php
//get the data from the form in an array
$entry=$_POST['firstname'];
//check if the array is empty or not
if (empty($entry))
{
echo("execution failed");
}
//if not empty, continue
else
{
//get the array size
$N=count($entry);
//display the size of the array
echo "$N"."<br>";
//this loop should display all the data in the array
for($i=0; $i<$N; $i++)
{

echo "$entry[$i]"."<br>";

 }
//end script by showing successful result
echo ("request successful!");

}
?>

送信したい名前を確認してスクリプトに送信すると、コードは正常に実行されます。スクリプトは配列のサイズを表示しますが(たとえば、4つの名前をクリックすると、4の数字が表示されます)、他には何も表示されず、クリックした実際の名前は表示されません。ページ。誰かが親切に私がこれを解決するのを手伝ってくれるでしょうか?配列に値が正しく割り当てられていない可能性があると思いますfirstname[]

スクリプトページに表示されるように、データベースから取得したデータを送信するには、この方法(チェックボックス)を使用する必要があることに注意してください。私はプログラミングにとても慣れていないので、親切に助けを求めます、ありがとう。

4

1 に答える 1

0

$data を文字列と連結する必要があります。変更するだけです

value=\"<?php $data;?>\"

それも

value=\"".$data."\"
于 2012-09-27T18:28:04.757 に答える