2012-03-29 2 views
0

내 코드는 다음과 같습니다. 나는 PHP와 MySQL에 대해 상당히 새로운 것이다. 내 가져 오기가 문자열 "배열"을 반환하는 이유를 파악하는 데 어려움을 겪고 있습니다. 또한 모든 echo 문을 작성하는 더 좋은 방법이 있습니까? 적절한 PHP 코딩 규칙은 무엇입니까? mysql_fetch_array가 배열을 반환하도록되어 있기 때문에'Array'를 반환하는 쿼리 가져 오기

while($row = mysql_fetch_array($question)) 
{ 
$answerID = $row['intQAID']; 
$getAnswer = mysql_query("SELECT cBody FROM tblQA WHERE intResponseID = $answerID AND intPosterID = '17'"); 
$answerBody = mysql_fetch_array($getAnswer); 
echo "<tr class='forum'>"; 
echo "<td class='forum'>" . $row['intQAID'] . "</td>"; 
echo "<td class='forum'>" . substr($row['cBody'], 0, 150) . "</td>"; 
echo "<td class='forum'>" . $row['cCategory'] . "</td>"; 
echo "<td class='forum'>" . $row['username'] . "</td>"; 
echo "<td class='forum'>" . $row['post_time'] . "</td>"; 
echo "</tr>"; 
echo "<tr class='forum'>"; 
echo "<td class='forum'></td>"; 
echo "<td class='forum'>$answerBody</td>"; 
echo "<td class='forum'></td>"; 
echo "<td class='forum'></td>"; 
echo "<td class='forum'></td>"; 
} 
echo "</table></div></div>"; 
+0

$ answerBody이 반환 '배열'그것은 여전히 ​​"배열"을 반환 – BigMike

답변

0

Array을 반환합니다. 이것은 the documentation과 함수 이름으로 지정됩니다!

배열을 반환하기 때문에 배열에 항목이 하나만있는 경우에도 여전히 배열을 반환합니다.

+0

을 시도 I합니다 ([문서]와 – BigMike

+0

다시뿐만 아니라 mysql_fetch_row() 함수를 사용할 때 http://uk3.php.net/mysql_fetch_row) : "가져온 행에 해당하는 숫자 배열을 반환합니다." – Quentin

+0

데이터베이스에서 일반 문자열을 다시 가져 오는 대신 배열에서 * 꺼내십시오 * (일반 문자열을 얻지 못하기 때문에) 데이터베이스에서 다시). – Quentin

0

구문이 잘못되었습니다. mysql_fetch_array는 기본적으로 배열을 리턴한다. 배열 에코를하면 PHP는 "Array"를 출력합니다. 이 명령에는 PHP manual에 많은 좋은 예가 있습니다.

heredoc 형식은 큰 블록을 에코하기에 좋습니다. 또는 PHP 블록을 끝내고 필요할 때 다시 시작할 수 있습니다 (아마도이 ​​상황에서 할 수있는 일입니다).

<?php 
    // lots of PHP statements 
?> 
    <table> 
    .... 
    <td><?php echo $variable; ?></td> 
    .... 
<?php 
    // resume php 
?> 

어떤 사람들은 반향을 위해 코드에 short tags을 사용합니다. 나는 개인적으로 선호하지 않지만 개인적으로는하지 않습니다. 새로운 버전의 PHP는 기본적으로 활성화되어 있지만 이전 버전의 서버에서는 지원하지 않을 수 있습니다.

0

<?php 
     $query = mysql_query("SELECT cBody FROM tblQA WHERE intResponseID = $answerID AND intPosterID = '17'"); 

     while($row = mysql_fetch_assoc($query)): 
?> 
<tr> 
    <td><?php echo $row['field_name']; ?></td> 
    <td><?php echo $row['field_name']; ?></td> 
    <td><?php echo $row['field_name']; ?></td> 
    <td><?php echo $row['field_name']; ?></td> 
    <!-- and so on --> 
</tr> 
<?php endwhile; ?> 
관련 문제