2017-08-10 60 views
-1

我爲工作人員創建了一種(可用/不可用)來存儲每個工作日的開始和結束時間/日期。Echo數據庫值並創建或更新記錄

這裏是我的目標:

  1. 他們的個人ID掃描後,他們將看到自己的照片。
    此外,數據庫將執行以下操作:
  2. 數據庫檢查或當前日期的任何記錄。
    是=更新停止時間和日期。
    否=創建新條目。

代碼:

if (isset($_POST['action'])) { 

$queryRegistration = "SELECT id, number, startdate FROM timeRegistration"; 
$resultRegistration = mysqli_query($conn, $queryRegistration); 

while($row = mysqli_fetch_assoc($resultRegistration)) { 
    if ($row['number'] == $staffNumber) { 
     if ($row['startdate'] == $currentDate) { 

      echo $row['number'].' '.$row['id']; 
      echo '<div class="boxPersons">My Picture</div>'; 
     } 
     } 
    } 
} 

目標1:不工作。因爲它創造更多divs。我如何管理它只創建一個div?

目標2:我想以更新或類似功能的創建:

function newEntryDate() { 
    $sql = 'INSERT INTO timeRegistration (id, number, startdate, enddate, starttime, endtime, value) VALUES (NULL, "'. $staffNumber .'", "'. $currentDate .'", "", "'. $currentTime .'", "", "")'; 
    return $sql; 
} 

問:我怎樣才能確保此作品在我的腳本中?我不知道如何開始。

+0

我們不能腳本代碼幫助你,你需要規劃出的項目,代碼和研究你的代碼的每個部分各部分,那麼如果你真的堅持的特定部分正在您代碼你可以回到我們這個問題太廣泛了。第一個目標爲 – MinistryofChaps

+0

:您正在檢索所有記錄,循環所有記錄並回顯每個記錄的div。向查詢中添加WHERE子句以僅選擇該特定用戶 –

回答

1

做這樣的事情。

如果您的查詢檢索的行數超過1個,則在查詢中設置限制。 最好不要在while循環中使用if語句。

if (isset($_POST['action'])) { 

$queryRegistration = "SELECT id, number, startdate FROM timeRegistration where startdate =".$currentDate." AND number=".$staffNumber." limit 1;"; 
$resultRegistration = mysqli_query($conn, $queryRegistration); 
$i=0; 
while($row = mysqli_fetch_assoc($resultRegistration)) { 
    echo '<div class="boxPersons">My Picture</div>'; 
    $i++; 
} 
if($i>0){ 
    newEntryDate(); 
} 
+1

做或不​​做,不存在「嘗試」。一個好的答案***將總是解釋所做的事情以及爲什麼這樣做,不僅是爲了OP,還是爲了將來訪問SO。 –

+0

我在回答中做了更正。謝謝你,先生。 –

+0

而不是你應該使用mysqli類的mysqli函數。 – masterfloda