single quotes vs double quotes, how to arrange? [closed] - php

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 9 years ago.
Improve this question
Please let me know how to writte the below code so as to work because as it is it doesn't work
echo "<a href='$row['url']'>$row['link_text']</a>";

Write so you can read it next time. Also syntax highlight is better this way:
echo '' . $row['link_text'] . '';

You are using ' twice, so you need to escape them or just remove them in this case:
echo "<a href='$row[url]'>$row[link_text]</a>";

When you have to insert complex variables like array values inside strings, usually printf or sprintf is more clear and less error-prone.:
printf("<a href='%s'>%s</a>", $row['url'], $row['link_text']);

This will work:
echo "<a href='".$row['url']."'>".$row['link_text']."</a>";
Also this:
echo "<a href='{$row['url']}'>{$row['link_text']}</a>";
It's personal preference.
It's because you've put a ' inside another '.

echo "<a href='{$row['url']}'>{$row['link_text']}</a>";
or
echo "<a href='" . $row['url'] . "'>" . $row['link_text'] . "</a>";
Choose the one more to your liking.

You can try with.
echo "<a href='".$row['url']."'>".$row['link_text']."</a>";
Or
echo "<a href='{$row['url']}'>{$row['link_text']}</a>";
Or
echo ''.$row["link_text"].'';

Related

Trying to make this entire line of code into a hyperlink [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 5 years ago.
Improve this question
echo <a href = 'test.php'> "CategoryID: " . $row["CategoryID"]. " - Category Name: ".$row["CategoryName"]. </a> "<br>";
This is what i have an is not working properly.
This:
echo "<a href = 'test.php'>CategoryID: {$row['CategoryID']} - Category Name: {$row['CategoryName']}</a><br />";
I am using the { and } as they allow you to include an array in a string and ignore the concatenation which I find harder to read.
I find it funny that you can loop through a MySQL array but can't echo a simple string :P
Some links (teach a man to fish...):
W3Schools
PHP documentation
Codecademy
Tutorials Point
Try this:
<?php
$link = "";
$link = sprintf("<a href = 'test.php'>CategoryID: %d - Category Name: %s </a><br />", $row['CategoryID'], $row['CategoryName']);
echo $link;
?>
Assuming that $row['CategoryID'] is an integer and $row['CategoryName'] is a string.

PHP echo statement IF parse error [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 4 years ago.
Improve this question
if ((isset($_GET['Menu']) && $_GET['Menu'] == "1" && $_GET['Overview']==1)
{
echo '$_GET['Overview']'
}
if statement to receive parameter from the URL
Because you cannot use if the way you do. Split up the echo, then it should work:
echo "<li><a " ;
if($_GET['Menu']==1) { echo 'class="select"'; }
echo " href=javascript:setParam('Menu',1);>Networks</a></li>";
$x="";
if($_GET['Menu']==1)
$x= 'class="select"';
echo "<li><a>".$x." href=javascript:setParam('Menu',1);>Networks</a></li>";
Im partial to sprintf for concatenation, but thats just me:
echo sprintf('<li><a %s href=javascript:setParam(\'Menu\',1);>Networks</a></li>',
$_GET['Menu']==1 ? 'class="select"' : '');
You need to echo every part of your code:
echo "<li><a ";
if($_GET['Menu']==1) { echo 'class="select"'; }
echo " href=javascript:setParam('Menu',1);>Networks</a></li>";

PHP echo results into a table [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 8 years ago.
Improve this question
I am struggling to put the data that is pulled from my database into a table layout.
This is the echo result:
echo "<p><h3>".$results['ID Number']."</h3>".$results['id_number']."</p>";
echo "<p><h3>".$results['Card Status']."</h3>".$results['card_status']."</p>";
echo "<p><h3>".$results['Full Name']."</h3>".$results['full_name']."</p>";
echo "<p><h3>".$results['DBS/CRB Number']."</h3>".$results['dbs_number']."</p>";
echo "<p><h3>".$results['Job Title']."</h3>".$results['job_title']."</p>";
echo "<p><h3>".$results['Card Start Date']."</h3>".$results['card_start_date']."</p>";
echo "<p><h3>".$results['Card Expiry']."</h3>".$results['card_expiry_date']."</p>";
echo "<img src='photos/".$results['photo_name']."'>";
Please can someone help me, its driving me crazy, also the Name of the result isn't showing, e.g. 'ID Number' as a title then 'id_number' result.
or is there an easier way to show all the data from the record rather than having multiple echo's
I have a search box to find a record matching the id_number and then the data connected to a id_number is then shown
Well I dont think there was any help needed , still for the sake of your blockade use this as
echo "<table><tr><td><h3>ID Number</h3></td><td>".$results['id_number']."</td></tr>";
echo "<tr><td><h3>Card Status</h3></td><td>".$results['card_status']."</td></tr>";
echo "<tr><td><h3>Full Name</h3></td><td>".$results['full_name']."</td></tr>";
echo "<tr><td><h3>DBS/CRB Number</h3></td><td>".$results['dbs_number']."</td></tr>";
echo "<tr><td><h3>Job Title</h3></td><td>".$results['job_title']."</td></tr>";
echo "<tr><td><h3>Card Start Date</h3></td><td>".$results['card_start_date']."</td></tr>";
echo "<tr><td><h3>Card Expiry</h3></td><td>".$results['card_expiry_date']."</td></tr>";
echo "<tr><td></td><td><img src='photos/".$results['photo_name']."'></td></tr></table>";
I'd personally store those into an array and loop over it.
Something like this:
<?php
$array = array();
$array[] = $results['ID Number'] . ' ' . $results['id_number'];
//And so on until all the values you want are in the array.
//You could potentially use a loop for this too, depending on your code
echo '<table>';
foreach($array as $value){
echo '<tr>';
echo '<td> $value </td>';
echo '</tr>;
}
echo '</table>';
As for the name of the result not showing up. It's hard to pin point that out without looking at the rest of the code.

PHP echo filename into img src [closed]

Closed. This question is not reproducible or was caused by typos. It is not currently accepting answers.
This question was caused by a typo or a problem that can no longer be reproduced. While similar questions may be on-topic here, this one was resolved in a way less likely to help future readers.
Closed 8 years ago.
Improve this question
I have a image filename stored and i want to echo it into some code where it will be a hyperlink to another page but it also gets the filename from the stored data.
echo " <a href=\"ProductDescription.php?productid=" . $row['productid'] . \" >
<img src=\"/admin/images/ . $row['image'] . \" alt=\"product image\" width=\"40\"
height=\"65\"></a> ";
The error I'm getting is
Parse error: syntax error, unexpected '"', expecting T_STRING
I just can't seem to figure out my syntax problem to get it to work.
just check your double-quotes
echo " ";
You forgot to add the " after productid. And also forgot to add it around image.
Do it via:
echo "<img src=\"/admin/images/$row['image']\" alt=\"product image\" width=\"40\" height=\"65\">";
Or
echo " ";
This should fix the error:
echo " <a href=\"ProductDescription.php?productid=" . $row['productid'] . " \" ><img src=\"/admin/images/" . $row['image'] ."\" alt=\"product image\" width=\"40\"
height=\"65\"></a> ";

PHP json_parse trakt API [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 9 years ago.
Improve this question
<?php
$response = file_get_contents("http://api.trakt.tv/shows/trending.json/5d7588c188eeea0074b8d2664d12fffc");
$result = json_decode($response, true);
echo $result['title'][0];
echo "<br>";
echo $result['network'][0];
echo "<br>";
echo $result['air_day'][0];
echo "<br><img style='width:200px;' src='";
echo $result['images'][0]['poster'];
echo "'>";
?>
Ain't working. I don't know why.
I use the the trakt.tv shows API.
Write
echo $result[0]['title'];
instead of
echo $result['title'][0];
Besides, PHP's echo function will print integers and strings, but will fail with array-alike structures. You could use var_dump or var_export instead. Thanks to them, you could scan the structure and you wouldn't ask this question ;)

Categories