1

I'm creating a custom mailchimp form template for my users.

So I would like to extract ONLY form action url from mailchimp code..

Can someone tell me how to extract action url from the following code.

<!-- Begin MailChimp Signup Form -->
<div id="mc_embed_signup">
<form action="http://xxxxxxxx.us5.list-manage.com/subscribe/post?u=xxxxxxxxxxxxxxxxxx&amp;id=xxxxxxx" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate>
    <h2>Subscribe to our mailing list</h2>
<div class="indicates-required"><span class="asterisk">*</span> indicates required</div>
<div class="mc-field-group">
    <label for="mce-EMAIL">Email Address  <span class="asterisk">*</span>
</label>
    <input type="email" value="" name="EMAIL" class="required email" id="mce-EMAIL">
</div>
<div class="mc-field-group">
    <label for="mce-FNAME">First Name </label>
    <input type="text" value="" name="FNAME" class="" id="mce-FNAME">
</div>
<div class="mc-field-group">
    <label for="mce-LNAME">Last Name </label>
    <input type="text" value="" name="LNAME" class="" id="mce-LNAME">
</div>
    <div id="mce-responses" class="clear">
        <div class="response" id="mce-error-response" style="display:none"></div>
        <div class="response" id="mce-success-response" style="display:none"></div>
    </div>  <div class="clear"><input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button"></div>
</form>
</div>

<!--End mc_embed_signup-->
PrivateUser
  • 4,474
  • 12
  • 61
  • 94

2 Answers2

3
preg_match('|form action="([^"]*?)" method="post" id="mc-embedded-subscribe-form"|i', $html, $matches);
$url = $matches[1];
HamZa
  • 14,671
  • 11
  • 54
  • 75
  • 1
    Hello and welcome to StackOverflow ! Thanks for your input, next time try to put some text, preferably some explanation. – HamZa Jun 13 '13 at 11:44
1

Ok, I solved it by myself.

$x = '<!-- Begin MailChimp Signup Form -->
<div id="mc_embed_signup">
<form action="http://xxxxxxxx.us5.list-manage.com/subscribe/post?u=xxxxxxxxxxxxxxxxxx&amp;id=xxxxxxx" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate>
    <h2>Subscribe to our mailing list</h2>
<div class="indicates-required"><span class="asterisk">*</span> indicates required</div>
<div class="mc-field-group">
    <label for="mce-EMAIL">Email Address  <span class="asterisk">*</span>
</label>
    <input type="email" value="" name="EMAIL" class="required email" id="mce-EMAIL">
</div>
<div class="mc-field-group">
    <label for="mce-FNAME">First Name </label>
    <input type="text" value="" name="FNAME" class="" id="mce-FNAME">
</div>
<div class="mc-field-group">
    <label for="mce-LNAME">Last Name </label>
    <input type="text" value="" name="LNAME" class="" id="mce-LNAME">
</div>
    <div id="mce-responses" class="clear">
        <div class="response" id="mce-error-response" style="display:none"></div>
        <div class="response" id="mce-success-response" style="display:none"></div>
    </div>  <div class="clear"><input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button"></div>
</form>
</div>

<!--End mc_embed_signup-->';
preg_match_all('!http?://[\S]+!', $x, $matches);
$all_urls = $matches[0];
var_dump($all_urls);
PrivateUser
  • 4,474
  • 12
  • 61
  • 94