2014-05-15 9 views
-1

Как раз перед тем, как я получил форму, из которой код получит Nr1 и Nr2, я также уже создал таблицу (Nr, x, y, z). Теперь мне нужно найти значение x в таблице, где Nr равно Nr1. Я получаю правильное echo $ Nr1, но не получаю $ x1, что означает, что ошибка в mysql_query. Пожалуйста, помогите мне найти его. Спасибо.Выберите из таблицы

<?php 
    if(isset($_POST['addy'])) 
    { 
     $con=mysqli_connect("***","***","***","****"); 
     if (mysqli_connect_errno()) { 
      echo "No MySQL: " . mysqli_connect_error(); 
     } 
     $Nr1 = $_POST['Nr1']; 
     $Nr2 = $_POST['Nr2']; 
     echo $Nr1; 
     $x1 = mysql_query("SELECT `x` FROM `table` WHERE `Nr`='$Nr1'"); 
     echo $x1; 
     mysqli_close($con); 
    } 
?> 
+0

Эхо результата 'mysql_query' - это * NOT *, чтобы дать вам найденные строки. Вам нужно «извлечь» строки из результата. –

ответ

1
$x1 = mysql_query("SELECT `x` FROM `table` WHERE `Nr`='$Nr1'"); 

Выход не является строкой! Чтобы получить resulsts, сделать время цикла:

while($row=mysqli_fetch_assoc($x1)){ 
echo $row['RowNr1']; 
echo ' - '; 
echo $row['RowNr2']; 
echo '<br>'; 
} 
+0

Кроме того, используйте mysqli_error, если вы считаете, что ошиблись в своем SQL-запросе. –

0

Переключает, потому что возвращение $x1 является логическим значением.

$result = mysql_query("SELECT `x` FROM `table` WHERE `Nr`='$Nr1'"); 
$row = mysql_fetch_array($result, MYSQL_ASSOC); 
echo $row['x']; 

Документация: mysql_fetch_array

mysql_ * функции является устаревшим PHP 5.5.0, и не рекомендуется для написания нового кода, как он будет удален в будущем. Вместо этого следует использовать расширение mysqli или PDO_MySQL.

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