[英]php get all the values from database which is matching in query
我是PHP新手。 我的PHP代碼有問題。 在MySQL中,我有這樣的數據庫:
CREATE TABLE IF NOT EXISTS `propertylocator` (
`store_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`store_name` varchar(255) NOT NULL,
`country_name` varchar(255) NOT NULL,
`state_name` varchar(255) NOT NULL,
`city_name` varchar(255) NOT NULL,
`address` varchar(255) NOT NULL,
`description` varchar(255) NOT NULL
PRIMARY KEY (`store_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
INSERT INTO `propertylocator` (`store_id`, `store_name`, `country_name`, `state_name`, `city_name`, `address`, `description`) VALUES
(1, 'My property1', 'India', 'uttar pradesh', 'Ghaziabad', 'Pilkhuwa, Uttar Pradesh 245304, India', 'this is demo test','this is dummy description'),
(2, 'My new Property', 'India', 'Maharashtra', 'Thane', 'Kudavali, Maharashtra 421401, India', 'test propery again', 'another dummy property'),
(3, 'Dummy store', 'United Arab Emirates', 'Sharjah', 'Halwan Suburb', 'Al Ghubaiba - Sharjah - United Arab Emirates', 'this is another dummy store','another text with dummy');
現在,我要顯示所有country_name
為India
的city_names
。 為此,我在phpMyAdmin中做了一個簡單的查詢,如下所示:
SELECT `city_name` FROM `ps_storelocator` WHERE `country_name`= 'india'
它給我看了兩個結果
Ghaziabad
Thane
現在,當我嘗試從我的php代碼中獲取此代碼時。 它僅顯示一個值。 代碼是這樣的
$host = "localhost";
$user = "root";
$pass = "";
$databaseName = "stores";
$tableName = "propertylocator";
$con = mysql_connect($host,$user,$pass);
$dbs = mysql_select_db($databaseName, $con);
$result = mysql_query("SELECT `city_name` FROM `propertylocator` WHERE `country_name`= 'india'");
$arrayvalue = mysql_fetch_array($result);
print_r($arrayvalue);
現在我得到這樣的價值
Array
(
[0] => Ghaziabad
[city_name] => Ghaziabad
)
有人可以告訴我如何從數據庫中獲取這兩個值嗎? 任何幫助和建議都是非常可取的。
您從數據的第一行獲取並顯示了數據,這就是您的代碼所說的。
如果要顯示多行,通常人們會在循環內執行以下操作:
while($arrayvalue = mysql_fetch_array($result))
{
print_r($arrayvalue);
}
這將在while循環內為從數據庫中獲取的每一行運行代碼。
同樣,您(似乎有)對同一數據行有兩個條目的原因是您使用的是fetch_array函數-該函數以索引數組和關聯數組的形式返回數據。
$result = mysql_query("SELECT city_name FROM ps_storelocator WHERE country_name= 'india'");
while($row = mysql_fetch_array($result))
{ echo $row['city_name'];}
像這樣嘗試
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.