The question is: Ajax makes a request to a .php file - a request is made to the database in this file and on the basis of this request an html is generated - this html is returned and written to a specific div. Everything works well. But what if you need to fill in two different divs. And the data for the second diva can also be obtained from the same query in the database. Those. the essence of the question is this: you do not want to make a request to the database twice, you need to make a request once and on the basis of it fill in two different divs with different data from this request. I hope I put it normally ...

$.ajax({ type: "POST", url: "Makers_details.php", //data: "username="+$("#username").val(), data:{ lat:g.lat(), lng: g.lng() }, success: function (data) { $("#but3").html($(data).find('#mydiv122')); } 

You need to add something like $ ("# but4"). Html (data1);

Php code:

  $query = "SELECT *, (SQRT(POW(Lat - '".$_REQUEST['lat']."', 2) + POW(Lng - '".$_REQUEST['lng']."', 2))" ." ) as distance FROM firm LEFT JOIN offers ON firm.Id = offers.Id_firm HAVING distance < 0.1 ORDER BY distance LIMIT 0 , 20;"; $result = mysql_query($query) or die('Запрос не удался: ' . mysql_error()); // Выводим результаты в html echo "<div id='mydiv122'>"; echo "<table id='mytable'>\n"; while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) { echo "\t<tr>\n"; foreach ($line as $col_value) { echo "\t\t<td visibility: hidden>$col_value</td>\n"; } echo " <div class='div_rigth1'>". $line['Category']. "</div>". "<div class='div_rigth1'>". "Проложить маршрут". "</div>". "<div class='div_odj' id='div_obj".$line['Id']."'>". "<a href='step.php?id=". $line['Id']. "' target='_blank'>". $line['Name']. "</a>". "</br>Адрес:". $line['Adres']. "</br>Расстояние:". round (100 * $line['distance'], 1). " км". "</br>". $line['Header']. "</div>" ; echo "\t</tr>\n"; $lat=$row['lat']; $lng=$row['lng']; $rows[] = $line; } echo "</table>\n"; echo "</div>"; 

Reply from server:

  <div id='mydiv122'><table id='mytable'> <tr> <td visibility: hidden>3</td> <td visibility: hidden>63</td> <td visibility: hidden>Автостраж</td> <td visibility: hidden>Власова 254</td> <td visibility: hidden>lkdjfhg@jdfh.ru</td> <td visibility: hidden>087876987</td> <td visibility: hidden></td> <td visibility: hidden>45.091480</td> <td visibility: hidden>39.008022</td> <td visibility: hidden>Аптека</td> <td visibility: hidden>876587---</td> <td visibility: hidden>Здесь Вам установят самую крутую сигналку! Приезжайте!</td> <td visibility: hidden>10:30:00</td> <td visibility: hidden>13:15:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>18:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>18:00:00</td> <td visibility: hidden>Краснодар</td> <td visibility: hidden>1</td> <td visibility: hidden>1</td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden>0.00034174775786593607</td> <div class='div_rigth1'>Аптека</div><div class='div_rigth1'>Проложить маршрут</div><div class='div_odj' id='div_obj3'><a href='step.php?id=3' target='_blank'>Автостраж</a></br>Адрес:Власова 254</br>Расстояние:0 км</br></div> </tr> <tr> <td visibility: hidden>1</td> <td visibility: hidden>63</td> <td visibility: hidden>Автоландия</td> <td visibility: hidden>Ростовское Шоссе 14/7</td> <td visibility: hidden>pivnev007@gmail.com</td> <td visibility: hidden>+79284148885</td> <td visibility: hidden>456</td> <td visibility: hidden>45.090557</td> <td visibility: hidden>39.007175</td> <td visibility: hidden>Кофейня</td> <td visibility: hidden>7650945399</td> <td visibility: hidden>Привет! Как дела? ЗАО "Автоландия" ЗАО 'Автоландия'</td> <td visibility: hidden>11:30:00</td> <td visibility: hidden>15:45:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>18:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>18:00:00</td> <td visibility: hidden>Ростов-на-Дону</td> <td visibility: hidden>1</td> <td visibility: hidden>0</td> <td visibility: hidden>1</td> <td visibility: hidden>1</td> <td visibility: hidden>Скидка1</td> <td visibility: hidden>Текст скидки 1</td> <td visibility: hidden>0.0009192870350483506</td> <div class='div_rigth1'>Кофейня</div><div class='div_rigth1'>Проложить маршрут</div><div class='div_odj' id='div_obj1'><a href='step.php?id=1' target='_blank'>Автоландия</a></br>Адрес:Ростовское Шоссе 14/7</br>Расстояние:0.1 км</br>Скидка1</div> </tr> <tr> <td visibility: hidden>6</td> <td visibility: hidden>63</td> <td visibility: hidden>Chop-Chop</td> <td visibility: hidden>ул. Есенина, д. 112, кв. 165</td> <td visibility: hidden></td> <td visibility: hidden>+79284148885</td> <td visibility: hidden>+79284148885</td> <td visibility: hidden>45.094807</td> <td visibility: hidden>39.002655</td> <td visibility: hidden>Кофейня</td> <td visibility: hidden></td> <td visibility: hidden>рпавыфв</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>18:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>18:00:00</td> <td visibility: hidden>Краснодар</td> <td visibility: hidden>1</td> <td visibility: hidden>1</td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden>0.006324040771501737</td> <div class='div_rigth1'>Кофейня</div><div class='div_rigth1'>Проложить маршрут</div><div class='div_odj' id='div_obj6'><a href='step.php?id=6' target='_blank'>Chop-Chop</a></br>Адрес:ул. Есенина, д. 112, кв. 165</br>Расстояние:0.6 км</br></div> </tr> <tr> <td visibility: hidden>7</td> <td visibility: hidden>64</td> <td visibility: hidden>ООО "Евромост-защита"</td> <td visibility: hidden>ул. Есенина, д. 112, кв. 165</td> <td visibility: hidden></td> <td visibility: hidden>+79284148885</td> <td visibility: hidden>+79284148885</td> <td visibility: hidden>45.066620</td> <td visibility: hidden>38.970947</td> <td visibility: hidden>Фаст-фуд</td> <td visibility: hidden></td> <td visibility: hidden>Это мой евромост!</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>18:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>18:00:00</td> <td visibility: hidden>Краснодар</td> <td visibility: hidden>1</td> <td visibility: hidden>1</td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden>0.044327570238344625</td> <div class='div_rigth1'>Фаст-фуд</div><div class='div_rigth1'>Проложить маршрут</div><div class='div_odj' id='div_obj7'><a href='step.php?id=7' target='_blank'>ООО "Евромост-защита"</a></br>Адрес:ул. Есенина, д. 112, кв. 165</br>Расстояние:4.4 км</br></div> </tr> <tr> <td visibility: hidden>5</td> <td visibility: hidden>64</td> <td visibility: hidden>АО "Сириус"</td> <td visibility: hidden>ул. Дальняя, 39/3</td> <td visibility: hidden></td> <td visibility: hidden>+79284148885</td> <td visibility: hidden>+79284148885</td> <td visibility: hidden>45.060638</td> <td visibility: hidden>38.964722</td> <td visibility: hidden>Ресторан</td> <td visibility: hidden></td> <td visibility: hidden>Привет!</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>09:00:00</td> <td visibility: hidden>Краснодар</td> <td visibility: hidden>0</td> <td visibility: hidden>0</td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden></td> <td visibility: hidden>0.05284679360853388</td> <div class='div_rigth1'>Ресторан</div><div class='div_rigth1'>Проложить маршрут</div><div class='div_odj' id='div_obj5'><a href='step.php?id=5' target='_blank'>АО "Сириус"</a></br>Адрес:ул. Дальняя, 39/3</br>Расстояние:5.3 км</br></div> </tr> </table> </div><div id='mydiv111'>sdfdsf</div> 
  • send back json with two code fragments and put it in place - splash58
  • Show the code for the ajax request and data placement. - alias
  • Code added in question - Alexander
  • @ Alexander I understand that you echo return content for only one div? - S. Pronin
  • form two blocks in php and return as is - Naumov

1 answer 1

Return let's say

 <div id="result-1"> Первый блок </div> <div id="result-2"> Второй блок </div> 

And when answering, choose the right one.

 $.ajax({ url: '/', success: function(result){ $('#block-1').html($(result).find('#result-1'))) } }); 
  • Got it. I'll try. - Alexander
  • I think in this case you can use the same id that is in the document and just replace the contents. not to change js if the document structure changes - splash58
  • Does not work ... Code updated in the question (((( - Alexander
  • You can see the answer ajax - Vadim Polukhin
  • Damn and how to get it ??? - Alexander