Мне нужна помощь в выяснении, почему следующий запрос DB не работает. Я знаю, что соединение с БД хорошее. Я также знаю, что $referralname = $_SESSION['user_name'];
правильно выполняет рендеринг. Это должно быть что-то с моим кодом.Не удается получить информацию о БД
Я получаю следующие ошибки. Может быть, это поможет понять это.
[12-Jun-2013 21:13:54 America/New_York] PHP Warning: mysql_query() expects parameter 1 to be string, object given in /x/x/public_html/americansolar/partner/classes/Referral.php on line 89
[12-Jun-2013 21:13:54 America/New_York] PHP Warning: mysql_num_rows() expects parameter 1 to be resource, null given in /x/x/public_html/americansolar/partner/classes/Referral.php on line 90
P.S. Я не уверен, требуется ли утверждение while или нет, поскольку оно всегда будет возвращать только один результат ???
Мой код:
// creating a database connection
$this->db_connection = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
// if no connection errors (= working database connection)
if (!$this->db_connection->connect_errno) {
$referralname = $_SESSION['user_name'];
// get the referrer's id
$query_get_referral_id = $this->db_connection->query("SELECT * From users WHERE user_name = '".$referralname."';");
$result = MYSQL_QUERY($query_get_referral_id);
$numberOfRows = MYSQL_NUM_ROWS($result);
$i = 0;
while ($i<$numberOfRows)
{
$thisId = MYSQL_RESULT($result,$i,"user_id");
$i++;
}
}
Мое решение:
$query_get_referral_id = $this->db_connection->query("SELECT * From users WHERE user_name = '".$referralname."';");
while($row = mysqli_fetch_array($query_get_referral_id))
{
$thisId = $row['user_id'];
}
Ahh, который объясняет многое :) Так что же мне нужно изменить, чтобы сохранить формат mysqli_result? '$ result = MYSQL_QUERY ($ query_get_referral_id);' –
Смотрите мое обновление ... – prodigitalson
Спасибо prod! Можете ли вы подробнее объяснить, как поместить строку user_id в переменную внутри цикла while? Кроме того, нет необходимости цитировать это с помощью переменной '$ i ++'? Извините, просто привык к старым способам этого делать :) –