2014-01-29 66 views
0

我是新來的PHP和MySQL,我需要做一個項目,我使用數據庫。我查了一些應該連接到本地主機上的數據庫的代碼,但是當我運行它時,我的瀏覽器上出現空白屏幕,而解釋代碼的人卻沒有。無法連接到MySQL服務器與PHP

我用的是XAMPP託管Apache和MySQL服務器

這裏是代碼:

<?php 
    define('DB_NAME', 'dbname'); 
    define('DB_USER', 'root'); 
    define('DB_PASSWORD', ''); 
    define('DB_HOST', 'localhost'); 


    $link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD); 

    if(!$link) { 
     die('Could not connect: ' . mysql_error()); 
    } 

    $db_selected = mysql_select_db(DB_NAME, $link); 

    if(!$db_selected){ 
     die ('Cannot use ' . DB_NAME . ': ' . mysql_error()); 
    } 

    echo "connected successfuly!"; 

    mysql_close(); 
?> 

對不起,作爲一個菜鳥。

編輯:

$value = $_POST['question_input']; 

$question = "INSERT INTO pitanja(pitanje_col) VALUES('$value')"; 

if(!mysql_query($question)){ 
    die('Error: ' . mysql_error()); 
} 

question_input是在HTML表單文本輸入 pitanja是數據庫 pitanje_col表是在數據庫

+1

請不要使用'mysql_'函數,它們已被棄用。而是使用'mysqli_'或'PDO'。我不明白爲什麼這麼多人不斷犯這個錯誤。 – Chris

+0

你正在使用哪個PHP版本。 –

+0

檢查你的PHP錯誤日誌。 – Barmar

回答

1

此代碼應正常工作的列。但是,您需要確保將所有「DB_NAME」替換爲實際的數據庫名稱。否則,它將無法正確連接。另外,在你甚至可以使用這個之前,你必須使用phpmyadmin建立一個新的數據庫和表格。有這個設置的標準格式,你應該看看。 (也可確保您的DB_USER和DB_PASSWORD是正確的)

你可以把一些PDO ...輸入會是這個樣子:

$sql = "INSERT INTO $usertable 
(firstName, lastName, streetAddress) 
VALUES (:firstName, :lastName, :streetAddress)"; 
$statement = $db->prepare($sql); 
$statement->execute(array(':firstName' => $firstName, 
':lastName' => $lastName, 
':streetAddress' => $streetAddress)); 

冒號後的話代表了列名。(填寫必要的變量)

+0

我檢查了我的數據庫名稱多次,並沒有爲用戶root設置密碼。我也創建了一個數據庫和一個表。這是鏈接到一個HTML表單,我現在編輯我的原始帖子,添加插入數據的表部分 – Phlame

+1

我編輯我的帖子有點包括一些額外的幫助。 –

+1

它現在已經完成 - 應該工作,除非mysql沒有運行:) –