我在網頁上有一個簡單的下拉框。在這裏是美國的所有州。當用戶選擇一個國家, 我想有一個PHP腳本只返回處於用戶選擇狀態(作爲HTML)的公司。使用PHP,讀取csv文件,有條件地輸出到HTML
我有一個CSV文件,該文件內容如下:
STATEID,公司,聯繫人,電話,當時,addy1
3,ABC礦山,喬治,555-555-1234,2012年6月6日,「Bronx,NY」
2,xyz mining,Fred,555-555-2345,2012年6月7日,「Seattle,WA」
0,我的公司,Me,555-555-3456,2012年6月8日,尤金,OR「
3,貴公司,您,555-555-4567,2012年6月9日,」Bronx,NY「
和和和上....
使用上述,具有STATEID = 3
所以通過一個HTML表返回,只有數據(或CSV線)...我已經看到很多使用fgetcsv的方法,但是我將如何完成上述問題?
我想你會搶下拉列表選擇索引值,把它作爲一個條件,通過每個迭代線,只輸出那些擁有3狀態ID ...
理想的情況下,我想在表格中輸出它們,但是列表或直接文本可以。
對於PHP來說相對來說比較新(從我甚至看了它已經有10多年了...) - 我真的很感謝這個幫助。
我知道......數據庫會更容易 - 但我完全控制了csv,寧願暫時走這條路。
<?php
echo "<table>\n";
$row = 0;
$handle = fopen("mycsvfile.csv", "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
if ($row == 0) {
// column line
$num = count($data);
echo "<thead>\n<tr>";
$row++;
for ($c=0; $c < $num; $c++) {
echo "<th>" . $data[$c] . "</th>";
}
echo "</tr>\n</thead>\n\n<tbody>";
} else {
// non-header lines
$num = count($data);
echo "<tr>";
$row++;
for ($c=0; $c < $num; $c++) {
echo "<td>" . $data[$c] . "</td>";
}
echo "</tr>\n";
}
}
fclose($handle);
echo "</tbody>\n</table>";
?>
我開始在這之後失去它。這只是輸出的所有數據 - 我還需要它來顯示用戶選擇的唯一狀態數據,通過一個變量,而不是輸出線是爲其他國家沒有選擇。我是使用strpos(),explode(),split()...我是一個dotNet程序員,很少有沒有經驗的PHP - 我希望學習。這是我的第一個項目 - 讓我輕鬆點!我不知道,也沒有使用PHP函數/方法 - 所以我不熟悉它們。 ;)
我已經啓動XAMPP並運行,所以我並不完全沒有希望。
你有問題嗎?我們不會爲你寫代碼。這聽起來像你有足夠的方法來開始編寫代碼,那麼爲什麼你不這樣做呢? – 2012-08-02 20:43:48
發佈您迄今嘗試的代碼。另外,我看到兩個「3」的狀態ID是否意圖? – 2012-08-02 20:44:30
csv數據應該進入數據庫。它會使這更容易和更快。 – 2012-08-02 20:44:37