2014-11-09 4 views
-1

Я пытался удалить данные из базы данных на PHP, но я просто получаю ошибки. Я получаю код из разных учебников и не могу найти проблему. Ошибка, которую я получаю: Предупреждение: mysql_query() [function.mysql-query]: Доступ запрещен для пользователя 'u820209931'@'10.2.1.47' (с использованием пароля: НЕТ) в/home/u820209931/public_html/delete. PHP на линии 12Удалить данные из базы данных в PHP

Предупреждение: mysql_query() [function.mysql-запрос]: ссылка на сервер не может быть установлена ​​в /home/u820209931/public_html/delete.php на линии 12 Доступ запрещен для пользователя ' u820209931'@'10.2.1.47' (с помощью пароля: НЕТ)

index.php: `

<? 
$servername = "Host"; 
$username = "User"; 
$password = "Pass"; 
$dbname = "DB"; 

// Create connection 
$conn = mysqli_connect($servername, $username, $password, $dbname); 
// Check connection 
if (!$conn) { 
    die("Connection failed: " . mysqli_connect_error()); 
} 

$sql = "SELECT * FROM People"; 
$result = mysqli_query($conn, $sql); 

if (mysqli_num_rows($result) > 0) { 
    // output data of each rowDelite 
    while($row = mysqli_fetch_assoc($result)) { 
     echo "ID: " . $row["id"]. " - Name: " . $row["name"]; 
     echo "<a href=\"delete.php?id=" . $row["id"] . "\">Delete Name</a>"; 
     echo "</br>"; 
     echo "</br>"; 
    } 
} else { 
    echo "0 results"; 
} 

mysqli_close($conn); 


?>` 

Delete.php:

<? 

    DEFINE ('DB_USER', 'User'); 
    DEFINE ('DB_PSWD', 'Pass'); 
    DEFINE ('DB_HOST', 'Host'); 
    DEFINE ('DB_NAME', 'DB'); 

    $dbcon = mysqli_connect(DB_HOST, DB_USER, DB_PSWD, DB_NAME); 

    mysql_query("DELETE FROM people WHERE id = $_GET[id]") or die(mysql_error()); 
    echo "Name has been deleted"; 
    header('Location: Index.php'); 

?> 
+0

использовать ORM, не верьте, что в 2014 году люди все еще используют необработанные запросы. – ncubica

ответ

1

Вы не передавая ссылку на запрос, вы должны изменить это так:

mysqli_query($dbcon, "DELETE FROM people WHERE id = $_GET[id]") 
0

Убедитесь, что пользователь u820209931 на 10.2.1.47 хоста существует и с использованием правильных пароль.

0

Используйте «mysqli_query» вместо «mysql_query». Надеюсь, он исправит ошибку.

mysqli_query("DELETE FROM people WHERE id = $_GET[id]", $dbcon); 
Смежные вопросы