나는 배우려고 노력하고있어. 왜 이것이 작동하지 않는지 나는 이해하지 못한다. include를 종료하고 함수 호출을 제거하고 함수에서 데이터베이스 연결을 랩핑하지 않으면 제대로 작동합니다.PHP mysql_query 오류
내가 여기에없는 것은 무엇입니까?
오류 메시지 :
경고 :는 mysql_query() : 공급 인수가 라인 (24) 데이터베이스 쿼리에 /home3/badamsne/public_html/views/dogs.php에 유효한 MySQL의 링크 자원 아닙니다 실패
웹 페이지 코드 : 별도의 파일에
<?php
include("../model/db_conn.php");
db_conn();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
// 3. Perform database query
$result = mysql_query("SELECT * FROM dogs", $connection);
if(!$result) {
die("Database query failed: " . mysql_error());
}
// 4. Use returned data
while ($row = mysql_fetch_array($result)) {
echo $row[0]." ".$row[1]."<br />";
}
?>
</body>
</html>
<?php
// 5. Close connection
mysql_close($connection);
?>
PHP 기능 :
<?php
function db_conn() {
// 1. Create database connection
$connection = mysql_connect("localhost","website_admin","[email protected]");
if(!$connection) {
die("Database connection failed: " . mysql_error());
}
// 2. Select a database to use
$db_select = mysql_select_db("website_db", $connection);
if(!$db_select) {
die("Database selection failed: " . mysql_error());
}
}
?>
감사! Tom
어떻게 말할 수는 있지만 $ 연결 변수에 문제가 있습니다. PHP는 어쨌든 전역 연결 객체를 유지합니다. 아마도 그것은 불필요하기 때문에 mysql_query 호출에서 그 변수를 제거 할 수있을 것이다. $$ connection = mysql_query ("SELECT * FROM dogs"); $ – zneak
$ connection에 문제가 없으므로 같은 범위에 있지 않습니다;) – svens
반복하지 마십시오. mysql_ * 인터페이스를 사용하십시오. mysqli 또는 PDO로 전환하십시오. 그것은 더 이상 사용되지 않으며 최신 PHP 릴리스에서 사라졌습니다. –