Ich habe ein kleines Problem mit $ _POST. Ich habe eine Auswahl mit mehreren Optionen. In jeder Option habe ich einen Wert und ein anderes Attribut, Daten, Daten, die ich verwende, um 2 Werte aus der Auswahl zu bekommen.
<select id="theId" name="theName" onchange="changeSelect();">
<option name="0" value="0.00" data="0.00"<?php if($val==0.00)echo 'selected=""';?>>0</option>
<option name="1" value="10" data="15" <?php if($val==10)echo 'selected=""';?>>1</option>
<option name="2" value="15" data="20" <?php if($val==15)echo 'selected=""';?>>2</option>
<option name="3" value="20" data="30" <?php if($val==20)echo 'selected=""';?>>3</option>
</select>
ich dann den folgenden Code verwenden, um die Werte zu erhalten:
var val1 = parseFloat($("select#theId option:selected").attr('value'));
var val2 = parseFloat($("select#theId option:selected").attr('data-us'));
Alles funktioniert perfekt ... außer wenn ich versuche, in der Datenbank, um die Werte zu speichern ... Ich kann nur
verwenden$data = array(
'val1' => $_POST['theName'],
'val2' => $_POST['theName']
);
so weit ich weiß, da $ _POST den Formularnamen ($ _POST ['Formname']) verwendet. Wenn ich den obigen Code verwende, speichert es den Wert von val1 für beide val1 UND val2.
Gibt es eine andere Möglichkeit, diese Werte zu speichern?
Ich bin mir nicht sicher, zu verstehen, aber versuchen Sie mit [] in Ihrem Attributnamen (wie '' das Ergebnis: ' $ _POST [foo] [0] und $ _POST [foo] [1] ' – Xenofexs
Setzen sie die Daten in einer versteckten Eingang. – Barmar
@Barmar aber würde es nicht noch in der gleichen sein wählen? wie ' ' ' Wäre es nicht immer noch der gleiche Formularname? – Jocker