2010-02-13 2 views
1

PHP 구문에 익숙하지 않고 가장 수용 가능하거나 올바른 코드를 작성하는 데 필요한 조언을 찾고 있습니다. 프론트 엔드 디자인에 중점을두고 있지만, 필자의 코드가 적절한 지 확인하고 싶다. 나는 디지털 미디어 프로그램에 참여하고 있으며 강사가 MYSQL 데이터베이스에 연결하기위한 코드를 제공해주었습니다. 나는 온라인으로 연결 스크립트를 볼 때 변수가 은 $를 연결 말하고 실행할 수 있습니다로mysqlConnect의 올바른 절차

<?php 
mysql_connect("localhost", "root", "root")or die("Cannot Connect to DB"); 
mysql_select_db("Example")or die("cannot select the DB Example "); 
?> 

그러나 그들이 된 mysql_connect 기능을 설정 한 if 문 진술; 그렇지 않다면 $ connect는 에러를 생성하고, mysql_select_db에 대해서도 마찬가지이다. 또한 mysql_close ($ connect); 아래처럼

<?php 
$connect = mysql_connect("localhost", "root", "root"); 
if (!$connect) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 

$db_selected = mysql_select_db("Example", $connect); 

if (!$db_selected) 
    { 
    die ("Can\'t use test_db : " . mysql_error()); 
    } 

mysql_close($connect); 
?> 

어느 쪽이든 좋습니까? mysql_close로 연결을 닫지 않으면 어떤 문제가 발생할 수 있습니까?

답변

1
  1. 문제가되지 않는다. or이 단락되어 있으므로 연결이 작동하면 die(...)이 실행되지 않습니다. 어느 쪽이든을 사용하는 것은 선호의 문제입니다. 당신이 mysql_connect() 호출의 결과를 유지하면서 or 버전을 사용하려면, 단순히 변수에 전체 표현식을 지정 : 모든 데이터베이스 통신을 완료 한 후

    $connection = mysql_connect(...) or die('Connection failed.'); 
    
  2. mysql_close()가 사용되어야한다.

+0

감사 맥스, 어떤 자원이 PHP 매뉴얼 이외, PHP 개발을위한 추천? 당신이 전혀하지 않으면. –

1

다른 mysql_*() 함수는 최신 호출 mysql_connect() 또는 mysql_pconnect()에 의해 생성 된 연결을 사용합니다. 어떤 이유로 여러 연결을 원할 경우이 방식으로 암시 적 연결 개체를 신뢰하지 못합니다. 연결 개체를 직접 저장하고 필요할 때마다 전달하는 것이 좋습니다. if 대신 or의 AN을 사용하는 관련된

0

또한 데이터베이스 작업을 시작하기 전에 mysql이 더 이상 안전하지 않으며 더 이상 사용되지 않는다는 것을 알고 있어야합니다. mysqli를 사용해야합니다. 객체 지향 언어로도 사용할 수 있습니다. 자세한 내용 : http://www.php.net/manual/en/book.mysqli.php 예 :

<?php 
$con = mysqli_connect("localhost","my_user","my_password","my_db"); 

// Check connection 
if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 
?>