How do I write:

$count = mysql_num_rows($result); print "<h3>$count metal prices available</h3>"; 

to a file, index.php?

I've tried:

echo "$count = mysql_num_rows($result); print "<h3>$count metal prices available</h3>";" > index.php 

but I don't understand how to escape the double quotes that are in the input.

Would it be better to use something other than echo? I'd rather not rewrite the whole PHP script if possible (it's longer than the 2 lines given in the example!).

2 Answers

There would be several ways to do so:

 cat >index.php <<'EOT' $count = mysql_num_rows($result); print "<h3>$count metal prices available</h3>"; EOT 

or

 echo '$count = mysql_num_rows($result); print "<h3>$count metal prices available</h3>";' > index.php 

or

 echo '$count = mysql_num_rows($result);' >index.php # overwrites file if it already exists echo 'print "<h3>$count metal prices available</h3>";' >>index.php # appends to file 

there are much more possible ways - use this as a starting point for test things...

1

In bash, all you need to do is replace the outer quotes with single quotes:

echo '$count = mysql_num_rows($result); print "<h3>$count metal prices available</h3>";' > index.php 

If you need to do more complicated stuff, you can echo multiple times using ">>" which appends instead of overwrites:

echo '$count = mysql_num_rows($result);' >> index.php echo 'print "<h3>$count metal prices available</h3>";' >> index.php 

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy