mysql_query (): предоставленный аргумент не является допустимым ресурсом MySQL-Link - PullRequest
1 голос
/ 24 мая 2011

Я пытался вставить образец данных из моей формы, но я всегда получаю синтаксическую ошибку при выполнении $ result.

Соответствующая часть из index.php:

<form method="post" action="form.php">
<ul >
    <li>
        <label for="accession_number">Accession Number</label>
        <input id="accession_number" name="accession_number" type="text" maxlength="6" value=""/> 
    </li>
</ul>
</form>

и детали из form.php:

<?php
$connection = mysql_connect($server, $username, $password) or die('Could not connect'.mysql_error());
mysql_select_db($database, $connection) or die("Cannot select db.");

$accession_number = $_POST['accession_number'];

$query = "INSERT INTO top (accession_number) ".
"VALUES ($accession_number)";
var_dump($query);
mysql_error();

$result = mysql_query($$query, connection) or die('Error querying database.');

mysql_close($connection);
?>

Я не знаю, что я делаю неправильно.

1 Ответ

7 голосов
/ 24 мая 2011

Ваши параметры для mysql_query() находятся в неправильном порядке.

Это

$result = mysql_query($connection, $query)

должно быть

$result = mysql_query($query, $connection)

http://php.net/manual/en/function.mysql-query.php

resource mysql_query (строка $ query [, resource $ link_identifier])

Обновление

Когда я сказал использовать mysql_error(), я имел в виду, только если была явная ошибка,Попробуйте что-то вроде этого

if (isset($_POST['accession_number'])) {
    $accession_number = $_POST['accession_number'];
    $query = sprintf('INSERT INTO `top` (accession_number) VALUES (%d)',
                     $accession_number);
    $result = mysql_query($query);
    if (false === $result) {
        throw new Exception('Error in query you have, hmmm: ' . mysql_error());
    }
    // and so on

Я настоятельно рекомендую полностью отказаться от библиотеки MySQL и перейти на PDO.Написание приведенного выше кода заставляет меня чувствовать себя грязным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...