PHP-Entwicklung
Posts 1-10 of 17
- Back
- Next
-
Alexander EgertThe company name is only visible to registered members.Problem Datenübergabe Optionfield und Tabellenwerte
Hallo an Alle...
Ich habe ein kleines Problem.
Ich habe mir eine Liste von Usern ausgelesen und hinter jeden User
ein Option-Field gemacht mit zwei Werten.
Aktiv und Inaktiv und möchte dann deren Status on the fly in der
Datenbank ändern und speichern.
Jetzt habe ich das Problem wenn ich die Daten dann ein mein
Auswertungsskript übergebe bekomme ich im Array nur den Status
geliefert nicht aber die ID des Datensatzes, somit weiß ich also
nicht welcher Datensatz sich ändert.
Hier mein Code bislang:
$db = new DatabaseConnection();
$result = $db->getSelect("Select mpos, name, vorname, land,
wert1, wert2, wert3, wert4, wert5 from User");
while ($row = mysql_fetch_array($result)) {
echo "<table>";
echo "<td><select name='test[]'>";
echo "<tr><td>".$row['mpos']."</td>";
echo "<td>".$row['name']."</td>";
echo "<td>".$row['vorname']."</td>";
echo "<td>".$row['land']."</td>";
echo "<td>".$row['Wert1']."</td>";
echo "<td>".$row['Wert2']."</td>";
echo "<td>".$row['Wert3']."</td>";
echo "<td>".$row['Wert4']."</td>";
echo "<td>".$row['Wert5']."</td>";
echo "<option value=0>Aktiv</option>";
echo "<option value=1>Inaktiv</option>></select></td>";
echo "</tr>";
echo "</table>";
}
echo "<Form method ='post' action='auswertung.php'>";
echo "<input type='submit' name='submit' value='Senden'
class='button''>";
echo "</form>";
Auswertung.php ist dann so:
<?php
error_reporting(E_ALL);
echo "<pre>";
print_r($_GET);
echo "</pre>";
$training=$_GET["test"];
echo "$test";
foreach ($test as $wert) {
echo "Der Wert ist ".$wert."<br />\n";
}
?>
Somit erhalte ich nur die Daten aus meinen Optionsfeldern. Wie kann
ich denn nun die Infos des Users mit übergeben um das Update in der
DB zu machen??
Vielen Dank schon mal...
- 28 Dec 2007, 10:49 am
-
Andreas Neugebauer(not a XING member)Re: Problem Datenübergabe Optionfield und Tabellenwerte
Hallo zurück,
also, erstmal würde ich u.U. in Erwägung ziehen, den einzelnen <option>-Feldern eine ID oder einen Namen zu vergeben, der ja u.U. auf die User-ID referenzieren könnte. Am einfachsten kann man dann die Werte mit einem AJAX-Tool, wie z.B. XAJAX in PHP abfragen.
Und das der HTML-Code diverse Fehler enthält, das wird der Validator ja auch bemängeln.
bis dann
Andreas Neugebauer
- 28 Dec 2007, 10:57 am
-
Alexander EgertThe company name is only visible to registered members.Re^2: Problem Datenübergabe Optionfield und Tabellenwerte
das Problem sind ja nicht meine Optionfelder an sich...
Ich habe ein Ergebnis hieraus...
Array
(
[test] => Array
(
[0] => 1
[1] => 0
)
[submit] => Senden
)
Array
Der Wert ist 1
Der Wert ist 0
Mein Problem ist wie erhalte ich die Userwerte dann mit aus meinem Formular?
Mit Ajax würde ich die Werte dann direkt beim ändern des Wertes im Optionsfeld in die DB schreiben???
Fehler HTML??? Ausser ein paar Tabellen habe ich doch nix großartig... Ist die Tabelle etwa schon falsch???
This post was modified on 28 Dec 2007 at 11:31 am.- 28 Dec 2007, 11:22 am
-
Post visible to registered members
-
Alexander EgertThe company name is only visible to registered members.Re^4: Problem Datenübergabe Optionfield und Tabellenwerte
ja ich habe rumprobiert und vergessen den Post und GEt wieder herzustellen...
kannst Du mir ein Beispiel geben wie es aussehen kann??? Ich verstehe das nicht so ganz wie das funktionieren sollte im Form...
Danke für die Mühen...
- 28 Dec 2007, 11:51 am
-
Andreas Neugebauer(not a XING member)Re^5: Problem Datenübergabe Optionfield und Tabellenwerte
Also,
erstmal kann man ja der <option> auch andere Werte als "0" und "1" geben, und dann kann man z.B. in XAJAX mit z.B. $_GET['OPTIONNAME'] den Wert erfahren. das hat mir bisher immer geholfen.
bis dann
Andreas
- 28 Dec 2007, 12:06 pm
-
Dr. Jochen Walker Premium MemberThe company name is only visible to registered members.Re^5: Problem Datenübergabe Optionfield und Tabellenwerte
Hallo,
eine Möglichkeit wäre zB an die Value Werte in dden Option Tags die ID anzuhängen mit einem festen Trennzeichen.
Dann kann man auf der Auswertungs Seite mit dem split Befehl den Wert wieder auseinander bauen.
zB
echo "<option value='".$id."_0'>Aktiv</option>";
dann nach der Übergabe auf der nächsten Seite:
$optValues = split( "_" , $postOptionValue);
dann enthält $optValues[0] die Idee und $optValues[1] den Value für den Status (aktiv oder inaktiv)
Grüsse
Jochen
This post was modified on 28 Dec 2007 at 12:07 pm.- 28 Dec 2007, 12:06 pm
-
Alexander EgertThe company name is only visible to registered members.Re^6: Problem Datenübergabe Optionfield und Tabellenwerte
Hallo Jochen,
dass heißt ich brauche dann im Form nicht mehr zu identifizieren welcher Datensatz das ist...
Klingt logisch und teste ich mal aus...
Falls es nicht klappt weiß ich ja wo ich euch finde ;-))))
Danke Danke Danke...
- 28 Dec 2007, 12:09 pm
-
Nicole Cordes Group moderatorThe company name is only visible to registered members.Re^7: Problem Datenübergabe Optionfield und Tabellenwerte
Hallo,
warum so schwierig?! Es gibt doch für jeden User eine eigene Selctbox?! Dann einfach in den Namen dieser noch die Id mitgeben, also <select name="test[id]"></select>
Dann kannst du bei der Auswertung das Array 'test' zum beispiel mit foreach durchlaufen und erhälst aus dem Key die Id des Datensatzes.
Liebe Grüße,
Nicole
- 28 Dec 2007, 12:30 pm
-
Post visible to registered members
- Back
- Next
