Ich versuche, ein HTML-Formular, das 3 Senden Schaltflächen mit unterschiedlichen Namen, aber ich kann nicht identifizieren, die zum Senden des Formulars gedrückt wurde, zu übermitteln.Senden Sie ein Formular mit mehreren Senden Schaltflächen - PHP
HTML:
<div class="col-md-12">
<form id="validation-form" class="form-horizontal form-label-left"
data-parsley-priority-enabled="false"
novalidate="novalidate"
action="./controller/productlineNewController.php" method="post">
<div class="col-md-6">
<section class="widget">
<div class="body">
<fieldset>
<div class="form-group">
<label class="control-label col-md-4" for="pl_name">Product Line Name *</label>
<div class="col-md-6">
<input type="text" id="pl_name" name="pl_name" onBlur="checkAvailability()"
class="form-control input-transparent"
placeholder="Enter Product Line Name" required="required">
<span class="help-block" id="availability-status"></span>
</div>
<p><img src="img/small_loading.gif" id="loaderIcon" style="display:none" /></p>
</div>
</fieldset>
</div>
</section>
</div>
<div class="col-md-12">
<section class="widget">
<div class="form-actions">
<div class="row">
<div class="col-md-10 col-md-offset-2">
<button type="submit" name="save" class="btn btn-lg btn-success"
onclick="needToConfirm = false;">Save</button>
<button type="submit" name="save_new" class="btn btn-lg btn-success"
onclick="needToConfirm = false;">Save & New Product Line</button>
<button type="submit" name="save_project" class="btn btn-lg btn-primary"
onclick="needToConfirm = false;">Save & Add Project</button>
<button type="button" onclick="resetForm()"
class="btn btn-lg btn-danger">Reset Form</button>
</div>
</div>
</div>
</section>
</div>
</form>
</div>
PHP - productlineNewController.php
print_r($_POST);
if (array_key_exists("save", $_POST)) {
$action = TRUE;
$new = FALSE;
$task = FALSE;
echo 'save';
} elseif (array_key_exists('save_new', $_POST)) {
$action = TRUE;
$new = TRUE;
$task = FALSE;
echo 'save_new';
} elseif (array_key_exists('save_project', $_POST)) {
$action = TRUE;
$new = FALSE;
$task = TRUE;
echo 'save_project';
}
Ergebnis:
Array ([pl_name] => aaa)
I isset
Funktion versucht haben, zu überprüfen, ob jeder Submit-Button geklickt wurde, aber ich habe nichts.
Ich habe auch versucht input
insted buttons
<input type="submit" name="save2" id="save" class="btn btn-lg btn-success" onclick="needToConfirm = false;" value="Save">
aber gleiches Problem zu verwenden.
Bitte helfen.
edit
wenn ich diesen JS
Code aus der HTML
Seite fiel es funktionierte gut, aber ich brauche diesen JS
Code, um das Formular zu validieren. kann das bitte jemand beheben.
<script src="lib/parsleyjs/dist/parsley.min.js"></script>
Mögliches Duplikat [Zwei in einer Form Tasten einreichen] (http://stackoverflow.com/questions/ 547821/two-submit-buttons-in-one-form) – flynorc
Überprüfen Sie diesen Thread, ich schätze, Sie sollten auch ein Wert-Attribut zu Ihren Senden-Buttons hinzufügen. – flynorc
Ja, @flynorc ich denke auch, das ist ein Duplikat von [Zwei Senden von Schaltflächen in einer Form] (http://stackoverflow.com/questions/547821/two-submit-buttons-in-one-form) – ImBS