私はPHPからExcelに取り込みたいドロップダウンを持っています。私はその後、私はそれ私もそれは、それはしませんでし役立つだろう望んbraketsを取り除いた文字列$templistimp = implode (", ", $row_temp);
にする配列を爆縮$sql_temp = "SELECT tempID FROM temp_sensor_specs WHERE statusTYPE ='SPARE'";
PHPExcelは、配列の最初の値をドロップダウンで配列するだけです
INSERT INTO `temp_sensor_specs` (`tempId`) VALUES
('T001'),
('T005'),
('T006'),
('T011'),
('T012'),
('T015'),
('T017'),
('T023'),
('T028'),
('T029'),
('T030'),
配列を呼び出すための私のスクリプトをテストしてみました。 O私のドロップダウンが次のようになります。
私はもっとこのようになり、そのHTMLの兄弟のように見えるようにしたいと思います。ここでは
私が使用していたコードです:
$sql_temp = "SELECT `tempID` FROM `temp_sensor_specs` WHERE `statusTYPE`='SPARE'";
$result_temp = mysqli_query($link, $sql_temp);
$row_temp = mysqli_fetch_array($result_temp,MYSQLI_NUM);
$templistimp = implode (", ", $row_temp);
$templist = str_replace(array('(', ')'), '', $templistimp);
//Data Validation list
$objValidation = $objPHPExcel->getActiveSheet()->getCell('B4')->getDataValidation();
$objValidation->setType(PHPExcel_Cell_DataValidation::TYPE_LIST);
$objValidation->setErrorStyle(PHPExcel_Cell_DataValidation::STYLE_INFORMATION);
$objValidation->setAllowBlank(true);
$objValidation->setShowDropDown(true);
$objValidation->setErrorTitle('Input error');
$objValidation->setError('Value is not in list');
$objValidation->setFormula1('"'.$templist.'"');
こんにちはマークベイカーあなたがアドバイスしたように私はやろうとし始めました。しかし、あなたが示唆したように、私は第1行からしか読んでいません。これをどのように結論づけてもいいですか?すべての値を取得するためにどのパラメータをチェックすべきかを示します。配列のこのコードはウェブページ上でうまく動作しますが、なんらかの理由でそれほど優れているわけではありません。 – brettg
データベースの結果から最初の行だけを読み取っているとはどういう結論になりますか? mysqli_fetch_array()はクエリ結果セットから1つの結果しか取得しません。各レコードを順番にフェッチしてループを構築し、配列を構築する必要があります –
ありがとうございました。申し訳ありませんが、mysqli_fetchステートメントの詳細を読み終えてください。私はmysqli_fetch_all()を使用して終了しました。 $ objValidation-> setFormula1( 'DropdownSheet!$ A $ 3:$ A $ 200');すべてがうまく働いています。 null値は返されません。あなたの忍耐は非常に高く評価されます。 – brettg