1. If you are moving the article so it will no longer show on index.php, then there will be no duplicate content. You will likely lose any SEO value/traction that the article has gained as (I assume!) you're not redirecting index.php to article.php. But otherwise, no duplicate content because the article will only be showing in one place. Just use fetch as google on both pages in Search Console to make sure that Google knows the article has moved off index.php.
2. A simple form with some labels and inputs is unlikely to cause duplicate content because that would be stupid. If it a massive long form, with a ton of words introductory content, then it might be more of an issue.