У меня есть сеанс, содержащий массив с ключом и значением, назначенным каждому массиву. После того, как массив установлен и сохранен в сеансе, я хотел бы получить и отобразить всю информацию из таблицы mysql, где ключ $ массива равен = id в моей таблице.
Я использую цикл foreach для эхо каждого $ key и $ value каждого массива уже, но я хочу эхо-данные из таблицы mysql, которая равна каждому ключу.
Мой стол
id | name | animalheight |
-------------------------------------------------------
2012dog dog 1m
2022cat cat 0.3m
Так что я хотел бы повторить имя и animalheight, если ключ сеанса установлен и равен идентификатору таблицы.
Часть кода, который выдает ошибку
///////////////DUMPING EVERYTHING FROM DATABASE////////////////////////////////////
$sql = "select * from products where $key =$id";
$myData = mysql_query($sql,$con);
if($record = mysql_fetch_array($myData))
{
echo "<br/>";
echo "||||||||||||||||". $row['name']. "||||||||||||||||";
echo "<br/>";
}
/////////////////////DUMPING EVERYTHING FROM DATABASE/////////////////////////////////////
Мой Полный код
//code
<?php
//////////////////////////////////////////////
$con = mysql_connect("localhost","****","");
mysql_select_db("*********",$con);
//////////////////////////////////////////////
session_start();
// create an array
$my_array=array('2012dog' => 1 , '2022cat' => 2);
// put the array in a session variable
if(!isset($_SESSION['animals']))
$_SESSION['animals']=$my_array;
// move submit code outside of foreach loop
if (isset($_POST["submit"]))
{
for ($i = 0; $i < count($_POST['aaa']); $i++) {
$aaa = $_POST['aaa'][$i];
$key_var = $_POST['ke'][$i];
// setting the session spesific session array value different for each key
$_SESSION['animals'][$key_var] = $aaa;
}
}
?>
<form method="post" action="">
<?php
// loop through the session array with foreach
foreach($_SESSION['animals'] as $key=>$value)
{
////////////////////////////DUMPING EVERYTHING FROM DATABASE////////////////////////////////////////////////
$sql = "select * from products where $key =$id";
$myData = mysql_query($sql,$con);
if($record = mysql_fetch_array($myData))
{
echo "<br/>";
echo "||||||||||||||||". $row['name']. "||||||||||||||||";
echo "<br/>";
}
////////////////////////////DUMPING EVERYTHING FROM DATABASE////////////////////////////////////////////////
// and print out the values
echo "Product ID is " .$key. " Quantity is ";
// getting the updated value from input box
?>
<input type="text" name="aaa[]" value="<?php echo $value ; ?>" size="2" />
<!-- take a hidden input with value of key -->
<input type="hidden" name="ke[]" value="<?php echo $key; ?>"><br>
<?php
}
?>
<input type="submit" value="Update value of key" name="submit"/>
</form>
СПАСИБО ЗАРАНЕЕ!
Я устал делать $ ключ = «ключ»; ..... а затем выберите говоря, где ключ = $ идентификатор, но он не работал; s – Jakie
Что Ошибка? –
Неопределенная переменная: id, а также mysql_fetch_array() ожидает, что параметр 1 будет ресурсом, boolean задан в – Jakie