2013-11-23 3 views
0

저는 현재 mysqli를 배우고 스크립트를 통해 내 비추천 쿼리를 체계적으로 대체하고 있습니다. 어떻게 연결을 제거하는 코드를 재 작업 할됩니다

<?php 
$link = mysqli_connect("host", "user", "pass", "name"); 
/* check connection */ 
if (mysqli_connect_errno()) { 
printf("Connect failed: %s\n", mysqli_connect_error()); 
exit(); 
} 
$query = "SELECT * FROM pins WHERE id='$pinDetails->id'"; 
$result = mysqli_query($link, $query); 
/* associative array */ 
$row = mysqli_fetch_array($result, MYSQLI_ASSOC); 
$feature = $row['featured']; 
/* free result set */ 
mysqli_free_result($result); 
/* close connection */ 
mysqli_close($link); 
?> 

내가 <?php echo $row['date_featured']; ?>

내 질문으로 페이지를 통해 에코 할 수 있습니다

나는이 쿼리가? 일반 연결을 페이지의 맨 위에 포함 시키면 모든 쿼리에서 db에 계속 연결하고 싶지 않습니다.

+1

여기에는 하나의 연결 만 표시됩니다. 이를 제거하면 아무 것도 없기 때문에 데이터를 쿼리 할 수 ​​없습니다. 당신은 정교 할 수 있습니까? – GolezTrol

+0

[SQL 주입] (https://www.owasp.org/index.php/SQL_Injection)을 방지하려면 [prepared statements] (http://bobby-tables.com/php.html)로 전환하십시오. [XSS] (https://www.owasp.org/index.php/Cross-site_Scripting_%28XSS%29)를 방지하려면 HTML로 출력 할 때 ['htmlspecialchars'] (http://php.net/htmlspecialchars)를 사용하십시오.). –

+0

@GolezTrol,이 쿼리를 가져온 페이지는 데이터베이스에 대한 주 연결을 포함하므로 쿼리 내에서 개별 연결을 할 필요가 없습니다. –

답변

0

실제로 SQL 데이터베이스를 기반으로 작동하려면이 페이지에 대한 연결이 필요합니다. 연결을 제거하면 무엇을 의미하는지 더 설명 할 수 있습니까? INCLUDE();

+0

이 쿼리 내에서 연결,'$ link'. 데이터를 출력하기 전에 연결을 확인하지 않도록 쿼리에서 제거하고 싶습니다. 그 이유는 페이지 전체가' '를 통해 데이터베이스 연결을 포함하기 때문입니다. –

관련 문제