|
Posted by "Shaun" on 10/21/28 11:33
Hi M,
Thanks for your help, the code works fine except if there is a line break in
the html, for example
this works
<p>test</p>
But this doesnt
<p>test
</p>
Any ideas?
"M" <lists@gazelasport.sk> wrote in message
news:438EAD90.1040601@gazelasport.sk...
> The second parameter to preg_replace is the replacement string (with
> optional backreferences), not another patern.
>
> Use '/<p\>(.*)(?=<\/p>)/' for patern, '<a
> href="edit_paragraph&text=$1"><p>$1' for replacement string, however, this
> does not urlencode the text parameter. You can use preg_replace_callback
> instead of preg_replace to encode it in the callback function.
>
> This won't work for long paragraphs because the lenght of GET request is
> limited. Change it to use forms instead.
>
> Shaun wrote:
>> Hi,
>>
>> I am trying to read the contents of a file into a string and wrap an <a
>> href=""> tag around every <p> tag and output it to the browser. This is
>> how far I have got:
>>
>> // Get file contents
>> $file_contents = file_get_contents($file);
>> // Replace <p> tags
>> $file_contents = preg_replace('/^<p\>[a-z][0-9]<\/p>$/', '/^<a
>> href="edit_paragraph&text="">\<p>[a-z][0-9]<\/p><\/a>$/',
>> $file_contents);
>> // Output to browser
>> echo $file_contents;
>>
>> I have two problems.
>>
>> 1. - The regex doesn't work!
>> 2. - I need to add the <p> tags and all contents to the link
>>
>> Here is an example
>>
>> <html>
>> <body>
>> <p>Here is a paragraph</p>
>> <p>Here is another paragraph</p>
>> </body>
>> </html>
>>
>> would become
>>
>> <html>
>> <body>
>> <a href="edit_paragraph&text="<p>Here is a paragraph</p>"><p>Here is a
>> paragraph</p></a>
>> <a href="edit_paragraph&text="<p>Here is another paragraph</p>"><p>Here
>> is another paragraph</p></a>
>> </body>
>> </html>
>>
>> Any advice would be greatly appreciated
[Back to original message]
|