Solved

Making a line break, MySQL and PHP

Posted on 2013-01-27
8
506 Views
Last Modified: 2013-01-27
I am running a query in MySQL and PHP.  THe query worrked until I needed to put Name and Address on two different lines, can't seem to find out how it works.  Here is the code.

$i=0;
while ($i < $num) {
$f1=mysql_result($result,$i,"RestName<br/>Address");
$f2=mysql_result($result,$i,"Phone");
$f3=mysql_result($result,$i,"Price");
$f4=mysql_result($result,$i,"Rating");

Also if it matters address is the result of  a CONCAT.

Open in new window

0
Comment
Question by:DS928
  • 5
  • 3
8 Comments
 
LVL 16

Expert Comment

by:kmslogic
ID: 38825447
the mysql_result() function is expecting a column name--so Name and Address should be two separate columns in your query and then in your processing to output them you should worry about putting them on two separate lines.

If you show the code above this section that does your query I can give some more specifics.
0
 

Author Comment

by:DS928
ID: 38825451
Thank you.  This is the query.

$query="SELECT tblLocations.CityID, tblLocations.AreaID, tblLocations.CuisineID, tblRestaurants.RestName, 			 	
		CONCAT(tblLocations.StreetNumber,' ', tblLocations.Street) Address,
		tblLocations.Phone, tblDetails.Price,tblDetails.Ratings
		FROM tblRestaurants
		INNER JOIN tblLocations ON tblRestaurants.RestID = tblLocations.RestID
		INNER JOIN tblDetails ON tblLocations.RestID = tblDetails.RestID AND tblLocations.LocationID = 	tblDetails.LocationID
		WHERE tblLocations.CityID='$Doggie'
		AND tblLocations.AreaID='$Kitty'
		AND tblLocations.CuisineID='$Pig'
		ORDER BY tblRestaurants.RestName ASC";

Open in new window

0
 
LVL 16

Expert Comment

by:kmslogic
ID: 38825465
Ok, so in this section it should look something like this:

$i=0;
while ($i < $num) {
$f1=mysql_result($result,$i,"RestName");
$f2=mysql_result($result,$i,"Address");
$f3=mysql_result($result,$i,"Phone");
$f4=mysql_result($result,$i,"Price");
$f5=mysql_result($result,$i,"Rating");

Open in new window


And then you should handle showing $f1 and $f2 on separate lines in your output code (if you show me your output echo statements I can give you some idea there too).

Also, if this address query is working then you can ignore this but I normally see this line of your query like this:

CONCAT(tblLocations.StreetNumber,' ', tblLocations.Street) AS Address

Open in new window


(note the AS)
0
Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

 

Author Comment

by:DS928
ID: 38825468
Here is the output.
<tr>
      <td bgcolor="#FFDAA6">&nbsp;</td>
      <td width="325"><font face="Arial, Helvetica, sans-serif"><?php echo $f1; ?></font></td>
      <td width="150"><font face="Arial, Helvetica, sans-serif"><?php echo $f2; ?></font></td>
      <td width="100"><font face="Arial, Helvetica, sans-serif"><?php echo $f3; ?></font></td>
      <td width="100"><font face="Arial, Helvetica, sans-serif"><?php echo $f4; ?></font></td>
    </tr>

Open in new window


Its should print like this.

Name
Address

Not like this..
Name     Address
0
 
LVL 16

Accepted Solution

by:
kmslogic earned 500 total points
ID: 38825481
Ok, so assuming you want the name and address to appear in the first cell of the table on separate lines:

<tr>
	<td bgcolor="#FFDAA6">&nbsp;</td>
	<td width="325"><font face="Arial, Helvetica, sans-serif"><?php echo $f1 . "<br />" . $f2; ?></font></td>
	<td width="150"><font face="Arial, Helvetica, sans-serif"><?php echo $f3; ?></font></td>
	<td width="100"><font face="Arial, Helvetica, sans-serif"><?php echo $f4; ?></font></td>
	<td width="100"><font face="Arial, Helvetica, sans-serif"><?php echo $f5; ?></font></td>
</tr>

Open in new window

0
 

Author Comment

by:DS928
ID: 38825488
OK, thank you. the errors are finally gone, but I am not receiving an output anymore.

<td width="325"><font face="Arial, Helvetica, sans-serif"><?php echo $f1 . "<br />" . $f2; ?></font></td>

Open in new window


HOK I rem out the output line for Name Address and I get these two errors.....I assume the second is because of the first.

Warning: mysql_result() [function.mysql-result]: RestName<br/>Address not found in MySQL result index 3 in /home/content/d/s/t/dstr3/html/MENUHEAD/Steelers/result_city.php on line 173
 
Warning: mysql_result() [function.mysql-result]: Rating not found in MySQL result index 3 in /home/content/d/s/t/dstr3/html/MENUHEAD/Steelers/result_city.php on line 176
0
 

Author Comment

by:DS928
ID: 38825506
Murphy's Law.  It's working!  Thank you for your help!
0
 

Author Closing Comment

by:DS928
ID: 38825507
Helped me out of that tricky syntax!
0

Featured Post

Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Nothing in an HTTP request can be trusted, including HTTP headers and form data.  A form token is a tool that can be used to guard against request forgeries (CSRF).  This article shows an improved approach to form tokens, making it more difficult to…
This article discusses four methods for overlaying images in a container on a web page
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

786 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question