Я пытаюсь сделать новый столбец с результатами запроса SQL в PHP:PHP/SQL ошибка доступа к массиву
$someArray= array(array('match'=>'123'), array('match'=>'456'), array('match'=>'789')); //arbitrary number of elements
foreach($someArray as $key=>$item){
$someArraysDouble[]=$item;
}
$someQuery="select count(*) as somecount from sometable";
$probe1=array();
$probe2="0";
$probe3="0";
$probe4="0";
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";//myDB uses MySQL
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
foreach($someArray as $key=>$item) {
$someQuery.=" where somecolumn like "%$item['match']%";
$blahblah=$conn->query($someQuery);
if ($blahblah->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$row['match']=$item['match'];
$probe1[]=$row;
}
}
$conn->close();
}
foreach($someArraysDouble as $key1=>$item1) {
foreach($probe1 as $key2=>$item2) {
if($item2['match']==$item1['match']) {
$probe2=$item1['somecount'];
$probe3=$item2['somecount'];
$item1['somecount']=$item2['somecount'];
$probe4=$item1['somecount'];
}
}
}
Выходной HTML выглядит следующим образом:
<html>
<head></head>
<body>
{$probe2}<br>{$probe3}<br>{$probe4}<br><br>
{loop $probe1 $key1 $item1}
{$item1['somecount']}<br><br>
{/loop}
<br><br>
{loop $someArraysDouble $key2 $item2}
{$item2['somecount']}<br><br>
{/loop}
</body>
</html>
Результат ... что-то не понимаю:
- $probe2
- null, который ожидается.
- $probe3
- это значение счета для последнего элемента, который ожидается.
- $probe4
- это значение счета для последнего элемента, который ожидается.
- Первый loop
с $probe1
производит значение счета для каждого элемента, который ожидается.
- Второй loop
с $someArraysDouble
не производит ничего, что НЕ ожидается. КАК это может случиться?
По какой-то причине я не делюсь для того, чтобы этот вопрос был кратким, мне нужно иметь значение счета для каждого элемента, выведенного через $someArraysDouble
.
Код-раскраска показывает ошибку с '$ someQuery. =" Где somecolumn как "% $ item ['match']%"; 'Число/тип скобок не совпадают. Try:' $ someQuery. = «where somecolumn like«% $ item ['match']% '";' – MaggsWeb
Где генерируется '$ someArray'?? – MaggsWeb