Solved

PHP:  how to replace a VBCrLf to a break using str_replace

Posted on 2008-06-14
10
2,910 Views
Last Modified: 2013-12-13
I am trying to translate a line from ASP.NET with MSSQL to PHP with MySQL.

The original is:
bio = replace(RS("biography"),vbcrlf,"<br />")

I got to here:
$bio = str_replace("\n", "<br />", $row["biography"]);

but the breaks aren't showing.
In MySQL the entity shows line breaks.
How do I detect them?

help?
Thanks
0
Comment
Question by:Evan Cutler
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
  • 2
  • +1
10 Comments
 
LVL 82

Expert Comment

by:hielo
ID: 21787510
try:
$bio = preg_replace('/(\r?\n)/', "<br />", $row["biography"]);
0
 
LVL 143

Assisted Solution

by:Guy Hengel [angelIII / a3]
Guy Hengel [angelIII / a3] earned 100 total points
ID: 21787535
please try this:
$search = array("\r\n", "\n", "\r");
$replace = '<br />';
$bio = str_replace($search, $replace,$row["biography"]);

Open in new window

0
 
LVL 9

Author Comment

by:Evan Cutler
ID: 21787570
no dice.
When I look at the output from MyPHPAdmin I can see the entries carraige return, but there is no visible symbols to indicate the carriage return.  

This is what it looks like in MySQL-MyPHPAdmin:
Ages:  All Ages
Medical School:  University of Kansas School of Medicine
Medical Degree:  MD
Board Certified:  Yes
Type of Board:  American Board of Family Practice

THis is what it looks like in the output:
Ages: 16 years and older Medical School: University of Connecticut Medical Degree: MD Board Certified: Yes Type of Board: American Board of Internal Medicine

help?
0
Simplifying Server Workload Migrations

This use case outlines the migration challenges that organizations face and how the Acronis AnyData Engine supports physical-to-physical (P2P), physical-to-virtual (P2V), virtual to physical (V2P), and cross-virtual (V2V) migration scenarios to address these challenges.

 
LVL 9

Author Comment

by:Evan Cutler
ID: 21787577
It also shows it like this:

<td valign="top">Ages:  12 years and older
Medical School:  University of Kansas School of Medicine
Medical Degree:  MD
Board Certified:  Yes
Type of Board:  American Board of Internal Medicine</td>

in the code.  Why does it not see that?
0
 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 21787579
can you show the relevant php code you use to query + output  the data?
is the php file online so we can see the output?
0
 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 21787584
just to be sure: did you try out my suggestion also?
0
 
LVL 82

Accepted Solution

by:
hielo earned 200 total points
ID: 21787610
try:
$bio = preg_replace('/(\r\n|\n|\r|\f)/U', "<br />", $row["biography"]);
0
 
LVL 9

Author Comment

by:Evan Cutler
ID: 21787714
yep, tried both.  Here's my code:


	$SQL = "select physician_name,biography,photo_path from physicians";
	$SQL = $SQL . " where physician_id = " . $docid;
	//<!--#include file="/includes/validate.asp"-->
	include("../includes/appdata.php");
	$result = mysql_query($SQL) or die ("Error performing query: " .  mysql_error() . "<br>" . $SQL . "</td></tr>");
	$num_rows = mysql_num_rows($result);
	if ($num_rows == 0)
	{
		echo "No physician listings was found.";
	}
	else
	{
		while ($row = @mysql_fetch_array($result))
		{
			if (strlen($row["biography"]) <= 0 || $row["biography"] == NULL)
			{
				echo "<tr><td>No current biography exists for ". $row["physician_name"] .".</td></tr>";
			}
			else
			{ 
				$bio = preg_replace('/(\r\n|\n|\r|\f)/U', "<br />", $row["biography"]);
				?>
				
					<tr>
						<td <?PHP if (strlen($row["photo_path"]) > 0) { ?>colspan="2"<?PHP } ?> >
							<table cellpadding="0" cellspacing="0" border="0" width="100%">
								<tr>
									<td width="19"><img src="../images/headerArrow.gif" width="19" height="23" border="0" /></td>
									<td class="headerText" valign="middle" bgcolor="#B5CBDB"><strong><?PHP echo $row["physician_name"]; ?></strong></td>
								</tr>
							</table>
						</td>
					</tr>
					<tr>
						<?PHP if (strlen($row["photo_path"]) > 0) { ?>
							<td align="left" valign="top" width="150"><img src="../<?PHP echo $row["photo_path"]; ?>" width="139" height="132" hspace="3"></td>
						<?PHP } ?>
						<td valign="top"><?PHP echo $row["biography"]; ?></td>			
					</tr>			
						
				
				<?PHP
				
				
			}
	
		}
	}
	?>
	
	</table>

Open in new window

0
 
LVL 4

Assisted Solution

by:afzz
afzz earned 200 total points
ID: 21787777
change the code shown below
//change this
<?PHP if (strlen($row["photo_path"]) > 0) { ?>
                                                        <td align="left" valign="top" width="150"><img src="../<?PHP echo $row["photo_path"]; ?>" width="139" height="132" hspace="3"></td>
                                                <?PHP } ?>
                                                <td valign="top"><?PHP echo $row["biography"]; ?></td>                  
                                        </tr>                   
 
//into this
<?PHP if (strlen($row["photo_path"]) > 0) { ?>
                                                        <td align="left" valign="top" width="150"><img src="../<?PHP echo $row["photo_path"]; ?>" width="139" height="132" hspace="3"></td>
                                                <?PHP } ?>
                                                <td valign="top"><?PHP echo $bio; ?></td>                  
                                        </tr>                   

Open in new window

0
 
LVL 9

Author Closing Comment

by:Evan Cutler
ID: 31467296
Thanks Guys!!!
Awesome solutions.
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

Creating and Managing Databases with phpMyAdmin in cPanel.
Since pre-biblical times, humans have sought ways to keep secrets, and share the secrets selectively.  This article explores the ways PHP can be used to hide and encrypt information.
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

763 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