أزرار إرسال متعددة على نفس مشكلة الصفحة

لدي اثنين من أزرار الإرسال على نفس الصفحة. يبدو أنه لا يعمل عندما أرسل الصفحة. هنا هو رمز بلدي. شكرا على أي اقتراحات.

   <?php
    if ($_POST['Submit_1'])
    {
      echo "Submit_1"; 
    }   
    if ($_POST['Submit_2'])
    {
      echo "Submit_2";
    }
    ?>
<form name="form1" id="form1" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post">
    <input type="submit" name="Submit_2" value="Add more"  onclick=" validateForm('form1');return false;"  >
    <input type="submit" name="Submit_1" value="Submit"  onclick=" validateForm('form1');return false;"  >
</form>
1
لا يبدو أن الصفحة تنشر نفسها.
وأضاف المؤلف nav100, مصدر
ما الذي لا يعمل بالضبط؟ أيضًا ، نسيت إغلاق السلسلة في $ _ POST ['Submit_2']
وأضاف المؤلف Alex Turpin, مصدر
هل يمكن أن توضح أفضل ما لا يعمل بالضبط؟
وأضاف المؤلف Till Helge, مصدر

3 إجابة

return false; will stop the buttons from submitting the form.

3
وأضاف
إذا كنت تستخدم زر إرسال واحد ، فإنه يعمل بشكل جيد.
وأضاف المؤلف nav100, مصدر
ثم يحدث الإرسال في JavaScript الخاص بك ، وهنا تكمن المشكلة.
وأضاف المؤلف dqhendricks, مصدر

You are using JavaScript to validate the form, then return false: the submit never propagates (unless it's part of your JavaScript we don't have). You need to submit after validation, and add a way to distinguish the button presses via JavaScript (like another parameter to your submit), or don't use JavaScript and PHP will handle it nicely for you.

0
وأضاف
لديّ document.form1.submit ()؛ بعد التحقق من الصحة. كيف يمكنني تمرير معلمة أخرى لتقديم؟
وأضاف المؤلف nav100, مصدر

استخدم نوع الزر بدلاً من submit .

0
وأضاف