Я пытаюсь получить несколько строк из базы данных и обрабатывать их для ответа в качестве службы с использованием php-кода, но я бы не возвращал все значения, показывается только первая строка из таблицы, как я могу заставить их работать?
Вот мой код:
$servername="localhost"; $username="root"; $conn= mysql_connect($servername,$username)or die(mysql_error()); mysql_select_db("testing",$conn); $sql="insert into login (src,dest)values('$from','$tona')"; $result=mysql_query($sql,$conn) or die(mysql_error()); $res = mysql_query("SELECT * FROM login"); $numrows = mysql_num_rows($res); setcookie('a',$numrows);
делай так
<?php $servername="localhost"; $username="root"; $conn= mysql_connect($servername,$username)or die(mysql_error()); mysql_select_db("testing",$conn); $sql="insert into login (src,dest)values('$from','$tona')"; $result=mysql_query($sql,$conn) or die(mysql_error()); $res = mysql_query("SELECT * FROM login"); $numrows = mysql_num_rows($res); while ($result=mysql_fetch_array($res)){ echo $result['src']."<br/>"; } setcookie('a',$numrows);
Обратите внимание, что использование _mysql
не рекомендуется для новой разработки … прочитайте это при выборе нового API
Это довольно просто, но вам нужно зациклировать возвращаемый результат так:
$res = mysql_query("SELECT * FROM login"); while ($row = mysql_fetch_array($res, MYSQL_BOTH)) { // your columns are accessible using $row['columnname']; // or $row[columnnumber]; }
Документы для mysql_fetch_array
находятся здесь
mysql_query
возвращает ресурс с успехом или false при mysql_query
mysql_ * – устаревшее использование
$res = mysql_query("SELECT * FROM login"); $numrows = mysql_num_rows($res); while($row = mysql_fetch_assoc($res)) { print_r($row); }
Я вижу, что вы используете mysql вместо mysqli. Вместо этого попробуйте перейти на mysqli, потому что это станет новым стандартом. Начиная с версии PHP 5.5.0 mysql станет устаревшим.