#データべース検索にテーブル名と日付を選びたい
度々投稿して申し訳ありません。自分自身にデータを送りデータベースから表示をしているのですが、初回読込時に$locationset,$date1,$date2の値が入っていないと、エラーメッセージ:Underfind:indexが表示されてしまいます。
変数に値を代入する前に
php
1if(is_null($locationset)){ 2 echo 'NULL'; 3 $locationset = "ogaki"; 4}else{ 5 echo 'NULLじゃない'; 6 $locationset = $_REQUEST['locationset']; 7}
の形で入力してみても、エラーになってしまいます。
どうにか初回に値を入れたいのですが、いい方法はありますか?
php
1form action ="edit.php" method="post"> 2<input type="hidden" name="select" value="search"> 3<input type="date" name="date1" value="<?php echo date('Y-m-d');?>"> 4<input type="date" name="date2" value="<?php echo date('Y-m-d', strtotime('+1 day'));?>"> 5<input type="button" value="リロード" onclick="submit()"> 6</form> 7 8 9$locationset = $_REQUEST['locationset']; 10$date1 = $_REQUEST['date1']; 11$date2 = $_REQUEST['date2'];
php
1$pdo = new PDO('mysql:host=localhost;dbname=workinfo;charset=utf8','user','user'); //DB接続try&catchで囲うこと 2if (isset($locationset) && isset($date1) && isset($date2)){ //locationsetと日付を選んでいる場合すべて表示 3 $sql = "Select * from $locationset where workday between '$date1' and '$date2'"; 4}else{ 5 $sql = "Select * from $location"; 6 echo '工場を選んでください。'; 7} 8try{ 9//if (isset($_REQUEST['select'])) { 10foreach ($pdo ->query($sql)as $row){ // where workdayで抽出条件を設定する 11 echo '<tr>'; 12 echo '<form action="edit.php" method="post">'; 13 echo '<input type="hidden" name="command" value="update">'; 14 echo '<input type="hidden" name="id" value="',$row['id'],'">'; 15 echo '<td>',$row['id'],'</td>'; 16 echo '<td>','<input type ="date" name="workday" value="',$row['workday'],'"></td>';//dateを使うなら、SQLの前でreplace 17 echo '<td><input type ="text" name="workgroup" style="width:100px" value="',$row['workgroup'],'"></td>'; 18 echo '<td><input type ="text" name="personal" style="width:250px" value="',$row['personal'],'"></td>'; 19 echo '<td><input type ="text" name="product" style="width:250px" value="',$row['product'],'"></td>'; 20 echo '<td><input type ="text" name="createcnt" style="width:40px" value="',$row['createcnt'],'"></td>'; 21 echo '<td><input type ="text" name="unit" style="width:50px"value="',$row['unit'],'"></td>'; 22 echo '<td><input type ="text" name="bestbydata" style="width:70px"value="',$row['bestbydata'],'"></td>'; 23 echo '<td><input type ="text" name="remarks" value="',$row['remarks'],'"></td>'; 24 echo '<td><input type ="text" name="worktime" style="width:75px" value="',$row['worktime'],'"></td>'; 25 echo '<td><input type ="text" name="breaktime" style="width:75px" value="',$row['breaktime'],'"></td>'; 26 echo '<td><input type="submit" value="更新" onclick="window.location.reload(true),submit()"></td>'; 27 echo '</form>'; 28 echo '<form action="edit.php" method="post">'; 29 echo '<input type="hidden" name="command" value="delete">'; 30 echo '<input type="hidden" name="id" value="', $row['id'], '">'; 31 echo '<td><input type="submit" value="削除" onclick="window.location.reload(true),submit();"></td>'; 32 echo '</form>'; 33 echo '</tr>'; 34 } 35// } 36}catch(PDOException $e) { 37 $error = $e->getMessage(); 38 echo $error; 39}
追記
解決していない。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/23 01:43
2019/12/23 03:55