2015-02-10 2 views
-1

Я понятия не имею, почему я не смог получить значение из mysql через php в HTML, можете ли вы, пожалуйста, рассказать мне, что случилось с моим кодированием ниже, спасибо! это очень странно, что я могу получить значение 1, когда я эхо $ count2, но я не мог получить значение поля независимо от эха $ BU2 или $ dept2, результат die("123". $bu2 ." ". $count2 ."123"); является 123 1123не может получить значение из mysql

if (isset($_POST['update'])) { 
include 'db.php'; 
mysql_query("SET CHARACTER SET utf8", $conn); 
mysql_query("SET NAMES utf8", $conn); 
$query2=mysql_query("SELECT bu, SUBSTRING_INDEX(dept, '-',-1) AS Department FROM tb_user WHERE username = '". $sessionusername ."'", $conn); 
$count2=mysql_num_rows($query2); 
if ($count2 == 1) { 
    $bu2=$query2['bu']; 
    $dept2=$query2['Department']; 
    die("123". $bu2 ." ". $count2 ."123"); 
} 
mysql_close($conn);} 
+0

Какой результат вы ожидаете? – ggdx

ответ

1

Использование mysql_fetch_assoc() и присвоить его переменной, например, $rec, а затем использовать $rec['bu'] Полный код будет

$rec = mysql_fetch_assoc($query2) 
$bu2 = $rec['bu']; 
$dept2 = $rec['Department']; 
+0

спасибо всем, но лучший ответ для одного только извините .... – jchan

-1

Вам нужно выборки строки таблицы с

mysql_fetch_array 

Что-то вроде:

$row = mysql_fetch_array($query2); 
$bu2 = $row['bu']; 
$dept2=$row['Department']; 
+0

почему вниз голос ?? – fortune

0

Для SELECT, SHOW, DESCRIBE, EXPLAIN и другие заявления, возвращающиеся, mysql_query ResultSet() возвращает ресурс при успехе, FALSE при ошибке. http://php.net/manual/en/function.mysql-query.php

Пока вы пытаетесь использовать результат mysql_query, как если бы это был ассоциативный массив. В ссылке, которую я вам дал, вы можете найти правильный способ получения результатов mysql_query. Что-то вроде этого:

$result = mysql_query($query); 
while ($row = mysql_fetch_assoc($result)) 
{ 
    echo $row['bu']; 
} 

В качестве альтернативы вы можете использовать mysql_fetch_array http://php.net/manual/en/function.mysql-fetch-array.php

$result = mysql_query($query); 
$data = mysql_fetch_array($result, MYSQL_ASSOC) 
print $data['bu'] 

Просто имейте в виду, обе эти функции являются устаревшими, вы хотите посмотреть в Mysqli http://php.net/manual/en/book.mysqli.php

2

Вы можете используйте mysql_fetch_assoc, чтобы получить значения в массиве всех значений.

$connection = mysql_connect($server, $username, $password); 

$query = mysql_db_query($database, $query); 

$row = mysql_fetch_assoc($query); 

Если вы проверили значение $ row, вы можете получить значения, тип ожидаемого результата.

Смежные вопросы