こんにちは、これは私の初めての投稿です、私は完全に立ち往生しているので、それは良いことだと思いました。PHPのswitchおよびIf/elseステートメントには可変スコープがないことを理解していました。
私の問題は、約5行の値を含むCSVファイル(サンプルファイル)があり、それをmySQL DBテーブルに入れる必要があることです(列ヘッダーは、switchステートメントの「ケース」で表されます)しかし、とにかく私はCSVファイルを解析し、データが本来あるべき列にあることを確認して、変数に格納します。次に、シリアル化されてからSQLクエリに渡される配列にすべての変数を格納します。
エラーが引き続き発生しますSCREAM:エラー抑制は無視されます(!)注意:未定義の変数:98行目のC:\ wamp \ www \ lcimport\serialize.phpの会社
しかし、私はそれらの変数がそこにあることを知っています。私はそれらをエコーすることができ、それらは呼び出されます。しかし、これらのエラーが解消されない限り、クエリは実行されないため、dbテーブルにデータが入力されません。
私は何が間違っているのですか?
<?php
//define some constants
$db = 'lc';
mysql_connect('localhost', 'root', '');
mysql_select_db($db);
mysql_error();
$uid = md5(uniqid(time()));
//we only have this here to be a row counter
$row = 1;
if (($handle = fopen("C:\\wamp\\www\\lcimport\\4records.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
//var_dump($data);
// echo $data[0];
echo '';
if ($row === 1) {
$header = $data;
}
$row++;
for ($c=0; $c < $num; $c++) {
//echo $data[$c] . "<br />\n";
if ($row === 2) continue;
switch ($header[$c] ){
case "Contact":
$contact = explode (" ", $data[$c]);
$firstName = $contact[0];
$lastName = $contact[1];
break;
case "Company":
$company = $data[$c];
case "Address1":
//store
$address1 = $data[$c];
break;
case "Address2":
$address2 = $data[$c];
break;
case "Address3":
$address3 = $data[$c];
break;
case "City":
$city = $data[$c];
break;
case "State":
$state = $data[$c];
break;
case "Zip":
$zip = $data[$c];
break;
case "Phone1":
$phone1 = $data[$c];
break;
case "Phone2":
$phone2 = $data[$c];
break;
case "Phone 3":
$phone3 = $data[$c];
break;
case "Fax":
$fax = $data[$c];
break;
case "Accountno":
$accountNo = $data[$c];
break;
default:
$junk = $data[$c];
break;
}
}
echo $company;
$meta = serialize(Array(
"firstname" => $firstName,
"lastname" => $lastName,
"lawfirmname" => $company,
'address' => $address1,
'city' => $city,
'state' => $state,
'zip' => $zip,
'fulladdress' => '',
'officenumber' => $phone1,
'faxnumber' => $fax,
'mobilenumber' => $phone2,
'email' =>'nothing',
'website' => 'somthing.com',
'privacy' => 0,
'status' =>1
));
mysql_query("INSERT INTO `mg_profiles` (meta) VALUES ($meta)");
mysql_error();
}
fclose($handle);
}
?>