Добавление массива в цикле с определенным форматом - PullRequest
0 голосов
/ 19 марта 2012

Я пытаюсь добавить данные, полученные из SQL-запроса в PHP.В основном у меня это пока что -

$sql = "SELECT * FROM product WHERE productId = '1'";
$result = mysql_query($sql);
if(mysql_affected_rows() > 0){
     while($row = mysql_fetch_assoc($result)){
           extract($row);
       $response["Sales"][]["Products"]["SaleProduct"] = array('ProductName'=>$ProductName);
     }
}

Это будет работать по большей части.Он будет добавляться к каждому массиву, однако, где я спотыкаюсь, если SQL возвращает более 1 строки ...

По сути, я пытаюсь вернуть массив в веб-сервис, он вернет "Продажи", сделанные,В каждой продаже может быть много товаров.С кодом, который я имею до сих пор, он обслуживает только один продукт на продажу.Если будет продано 2 продукта, это, по сути, приведет к 2 продажам по 1 продукту на каждый.

Может ли кто-нибудь правильно направить меня, чтобы получить то, что мне нужно?

Спасибо

1 Ответ

1 голос
/ 19 марта 2012

Исходя из вашего описания, это звучит как то, что вы ищете:

$response["Sales"]["Products"][] = array('ProductName'=>$ProductName);

Общая проблема заключается в том, что вы недостаточно осторожно используете синтаксис [].Хорошей идеей будет использовать только этот в конце выражения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...