2017-03-11 1 views
0

두 날짜 사이에 데이터베이스에서 행을 가져 오려고합니다. 여기까지 다른 질문을 사용했지만 앞으로 여기서 어떻게 나아갈 지 모르겠습니다.PHP가있는 SQL에서 두 날짜 사이의 행 선택

다음은 코드이며 그 아래에는 SQL에서 쿼리를 실행하는 출력과 사진의 스크린 샷이 있습니다.

미리 도움을 주셔서 감사합니다!

-

코드의 첫 번째 부분은 ID, 이름, 등

<?php 

$sql = "SELECT * FROM songs "; 
$result = $link->query($sql); 

if ($result->num_rows > 0) { 
    // output data of each row 
    while($row = $result->fetch_assoc()) { 
     echo "id: " . $row["ID"] . " - Name: " . $row["name"] . " " . $row["released"]. "<br>"; 
} 
} else { 
    echo "0 results"; 
} 

/* close connection */  

$link->close(); 

?> 

출력 코드 출력 "결과 0"

<?php 

$from_date = '2015-01-01'; 
$to_date = '2017-04-04'; 

$sql = "SELECT * FROM songs WHERE released BETWEEN '" . $from_date . "' AND '" . $to_date . "' "; 
$result = $link->query($sql); 

if ($result->num_rows > 0) { 
    // output data of each row 
    while($row = $result->fetch_assoc()) { 
     echo "id: " . $row["ID"] . " - Name: " . $row["name"] . " " . $row["released"]. "<br>"; 
    } 
} else { 
    echo "0 results"; 
} 

/* close connection */  

$link->close(); 

?> 

This is what the page looks like with the above code.

이 부

I've successfully selected the rows in SQL.

EDIT : 두 번째 코드 블록에 IF ELSE 문에 대한 질문에 코드를 작성할 때 실수를했습니다. 방금 실제로 사이트에있는 내용으로 업데이트했습니다. 솔루션을 기반으로 아무 것도 변경하지 않았고 여전히 행을 인쇄하지 않습니다.

+1

을'닫지 마십시오. – jhmckimm

답변

0

아 남자, 난 그냥 첫 번째 블록에서이 줄을 주석했다하는 데 필요한 :

$link->close(); 

내가 모든 사람에게 사과 누가 코드 블록이 서로 뒤 따랐다는 것이 확실하지 않다면 대답했다. 어쨌든, 같은 문제를 가진 다른 사람을 위해, 연결 -_-() {} 다른 {}`PHP에서 유효하지 않습니다

Here's what is output when I comment out the line from the first block

0

결과는 스크린 샷에서 볼 수 있듯이 표시됩니다. 문제 : else과 함께 While과 일치하지 않습니다.

마지막 예는 } 누락 그래서 말한다 : while { } else { echo "0 results"}

그러나 echo "0 results"은하지 while 때문에, num_rows -check 관련되어야한다.

+0

while() {} else {}'이 (가) 유효하지 않습니다. 누락 된'}'이 없습니다. 그것은 단지 중첩 문제입니다. – jhmckimm

+0

안녕 얘들 아 답장을 보내 주셔서 감사합니다. 나는이 질문에 대해 내 코드를 붙여 넣기를 잘못했다. 두 번째 섹션이 현재 사이트에 실제로 업데이트되었습니다. else 문은 이제 if 문과 연결되어야하며 "0 Results"를 계속 출력합니다. –

0

while/else을 제외한 모든 작업을 완료했습니다. 귀하의 코드 (2 차) 섹션은 다음과 같아야합니다

if ($result->num_rows > 0) { 

    while() { 
    //print your rows 
    } 
} else { 

    //Say that there's 0 results 
} 
+0

감사합니다. 나는이 질문에 대해 내 코드를 붙여 넣기를 잘못했다. 제가 사이트에 실제로 가지고있는 것에 업데이트되었습니다. 방금 게시 한 코드를 시도했지만 여전히 "0 개의 결과"를 출력하고 있습니다. –