Mehrere Formularfelder befüllen aus DB

Myar

Mitglied
Hallöchen!

Ich habe ein Formular das möchte ich, nachdem ich über eine Dropdownliste einen z.B. Hersteller ausgewählt habe, mit seinen Konditionen aus der Db befüllen.

Ich bin mittlerweile soweit, dass zumindest ein input Feld bfüllt wird. Jetzt steht da der Inhalt des Arrays drinne, dass die DB Abfrage per PHP ergeben hat.

Das passiert nachdem readystate ==4 und status == 200
Code:
function handleServerResponse(){
	
	//liest die Meldung vom Server
	response = xmlHttp.responseText;
	//Werte anzeigen (jetzt müssen die Sachen einzelnd aus dem response
	document.getElementById('skonto').value = response;
	document.getElementById('name').value = 'einName';
	document.getElementById('grundrabatt').value = 'GR';
	document.getElementById('kobo').value = 'ein Kobo';
	document.getElementById('zebo').value = 'ein Zebo';
	document.getElementById('hausbonus').value = 'ein HR';
	//document.getElementById('ja').value = 'irgendwas'; -> wie ändere ich den checked Status?
}

Das PHP Script gibt erstmal das zurück
PHP:
<?php
//autoload Funktion um Klassen einzubinden
require lib/autoload.php';

$manuf = new manufacturers();
$array = $manuf->getValues($_GET['manuid']);

print_r($array);
?>

Mein Formular:
HTML:
<form action="" method="post">
	<table>
		<tr><td>Hersteller: <span id='name'></span></td></tr>
		<tr><td>Skonto (in %):</td><td><input value='0' id='skonto' name='skonto' type='text' size="10" maxlength="10"></td></tr>
		<tr><td>Grundrabatt (in %):</td><td><input value='0' id='grundrabatt' name='grundrabatt' type='text' size="10" maxlength="10"></td></tr>
		<tr><td>Konzentrationsbonus (in %):</td><td><input value='0' id='kobo' name='kobo' type='text' size="10" maxlength="10"></td></tr>
		<tr><td>Zentralregulierungsbonus (in %):</td><td><input value='0' id='zebo' name='zebo' type='text' size="10" maxlength="10"></td></tr>
		<tr><td>Hausbonus (in %):</td><td><input value='0' id='hausbonus' name='hausbonus' type='text' size="10" maxlength="10"></td></tr>
		<tr><td>EK Mitglied?:</td><td><input type="radio" name="mitglied" id='nein' value="nein"> Nein</td><td><input type="radio" id='ja' name="mitglied" value="ja" checked ='checked'>Ja</td></tr>
		<tr><td><input type='submit' name='speichern' value='Speichern'
		onclick='insertValues()'/></td></tr>
	</table>
</form>

Und in dem input feld id='skonto' steht jetzt halt:
Array ( [0] => Array ( [name] => EinName [skonto] => 2.00 [grundrabatt] => 2.00 [kobo] => 2.00 [zebo] => 2.40 [hausbonus] => 2.00 [ek_mitglied] => 1 ) )

Joah, das muss ich nun in die anderen Felde rein bekommen und, die Radiobuttons müssen sich auch ändern.
Wenn ek_mitglied = 0 muss radiobutton id="nein" checked sein und umgekehrt...

Joah, da komme ich nicht weiter...

Gruß
Myar
 
Naja, bei der Funktion, die du bei Änderung des Herstellers feuerst kannst du doch den aktuellen ek_mitglied abfragen, oder?

Code:
if(array[0][ek_mitglied] == 0){
document.getElementById("nein").checked = true;
}

Gruß
 
Huhu!

Also ich habe nun heraus gefunden, dass ich mit json_encode das Array als String übergeben kann, der sieht nach etwas rumprobieren nun so aus:

{"json":[{"name":"EinName","skonto":"2.00","grundrabatt":"2 2.00","kobo":"2.00","zebo":"20","hausbonus":"20. 00","ek_mitglied":"1"}]}

PHP Code dazu:
PHP:
$ergebnis = $manuf->getValues($_GET['manuid']);
$array = array('json' => $ergebnis);
echo json_encode($array);

Nach Stunden des googelns und rumprobieren sieht der JS Code nu so aus, funktioniert aber nicht und ich weiß nicht weiter...
HTML:
response = xmlHttp.responseText;
  //Werte anzeigen (jetzt müssen die Sachen einzelnd aus dem response
  document.getElementById('skonto').value = response.json['skonto'];

Kann mir da noch wer helfen?
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück