Jump to content

loop with 'while' into array more than 1 time...


Recommended Posts

Dear Forum People,

 

I have a question about PHP.

 

I'm trying to use an array several times in combination with 'while' and 'mysql_fetch_assoc'.

 

the reason i have this requirements is because i need to display some googlemap coordinates inside a javascript and later on the html page i want to display other data coming from the database.

 

the code will explain the situation:

 

this is the code that goes before the html <head>


<?php 
//$where_query = "bedrooms_nbr = $form_bedrooms AND max_people > $form_adults  AND available = '1'";

$sql_search = mysql_query("SELECT id, available, building_id, max_people, min_nights, bedrooms_nbr, bedrooms_interconn FROM property_flats WHERE $where_query GROUP BY building_id ");
confirm_query($sql_search); //this is a function
$num_rows = mysql_num_rows($sql_search);

?>


<script type="text/javascript">
//<![CDATA[

// Sample hotel list -  LAT/LNG/Name
hotels = new Array(	
	<?php

	while ($grow = mysql_fetch_assoc($sql_search)) {

			$gbuilding_id = ($grow['building_id']); //this goes on the next query ---			

		 			$gsql_building = mysql_query("SELECT ordername, g1, g2 FROM property_buildings WHERE id = '$gbuilding_id'") ;
					confirm_query($gsql_building); //this is a function
					$grow_building = mysql_fetch_assoc ($gsql_building) ;
					$gordername = $grow_building['ordername'];
					$gg1 = $grow_building['g1'];
					$gg2 = $grow_building['g2'];

	echo "[". $gg1 . ", " . $gg2 . ", '". $gordername ."'], \n" ;		
	}
	echo "[, , '']";
	//reset($sql_search);

 

then inside the page i repeat the same loop in a very similar way but with many more variables fetch from the db

 

<?php 	  
	//
	//mysql_query is in the <head> for gmap to work
	echo '<h3 class="">'. $num_rows .' Apartments found</h3>';
	//print_r ($main_query_array) ;
	//
	$k=1; //this is for alternate colour row
	while ($row = mysql_fetch_assoc($sql_search)) {

		 	$id = $row['id'] ;
			$air_co = $row['air_co'] ;
			$bathrooms = $row['bathrooms'] ;
			$bedrooms = $row['bedrooms'] ;
			$ensuite = $row['ensuite'] ;
			$max_people = $row['max_people'] ;
                                // etc etc ....
			$building_id = ($row['building_id']); //this goes on the next query --- and refers to next apartment page--			

		 	// this is to know the BUILDING NAME{{{
		 			$sql_building = mysql_query("SELECT id, name, description, streetnum, street, areacode, picfolder, main_picture FROM property_buildings WHERE id = '$building_id'") ;
					confirm_query($sql_building); //this is a function
					$row_building = mysql_fetch_assoc ($sql_building) ;
					$name = $row_building['name'];
					$postcode = $row_building['areacode'];
					$description = $row_building['description'];
					// etc etc .....

		$goto = 'apartment.php?id='.$building_id.'';
		//


		echo '<a class="previewimg fl" href="'.$goto.'" title="'.$name.'"><img src="'.$folder_main_picture.'" alt="'.$name.'" /></a>
		<small class="fr tr"><br /><b>Minimum Stay: '.$min_nights.' Night</b></small>

		<h3><a href="'.$goto.'">'.$name.'</a></h3>
		<div class="address">'. $streetnum .' '.$street. ' - ' . $postcode.' [ <a href="#">Show on map</a> ]</div>
		<p>';
			$extract = substr ($description, 0, 250);
			// find position of last space in extract
			$lastSpace = strrpos($extract, ' ');
			// use $lastSpace to set length of new extract and add ...
			echo substr($extract, 0, $lastSpace).'... ';
			//echo '<a href="details.php?article_id='.$row['article_id'].'"> More</a>';
		echo '<a href="'.$goto.'">more »</a></p>
		<table class="roomlist full">
			<thead>
				<tr>
					<th class="tl w13">Available room types</th>
					<th class="tc w13">Maximum Persons</th>
					<th class="tr w13">Rate</th>
				</tr>
			</thead>
			<tbody>';
                                        <!-- a table to show all information about an hotel ....-->'
			</tbody>
		</table>
		<div class="clear"> </div>
	</div>
	<hr class="thin"/>
	<!-- End of Search item }}}-->' ;
		$k++ ; 
		}


	?>

 

please note: if i remove the loop for googlemap at the top of the page, the second loop for the hotel information dispalys correctly; and if i leave both loops working in the same page, only the google map comes up correctly.

 

any suggestion? is it because i made a mistake in the php code? or the javascript for googlemaps messes up with the rest of the code?

 

many thanks in advance.

 

regards,

giulio

 

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.