Hallo, ich steh grade kurz vorm Durchdrehen weil ich das Problem nicht finde und hoffe Ihr könnt mir weiterhelfen.
Ich möchte mir mittels AJAX und PHP Daten aus einer DB holen und diese in ein Formular eintragen.
Das AJAX-Skript wird mittels PHP erzeugt und arbeitet bis auf bei einem Formular Problemlos. Also klann es daran eigentlich nicht liegen. Bei dem besagten Formular wird jedoch nur ein Wert ins erste Feld eingetragen. der Rest bleibt leer obwohl ich einen vollständigen XML-String erhalte.
Hier mal das generierte AJAX-Skript:
Die XML-Datei:
Und das Formular:
Danke schonmal im Vorraus.
Ich möchte mir mittels AJAX und PHP Daten aus einer DB holen und diese in ein Formular eintragen.
Das AJAX-Skript wird mittels PHP erzeugt und arbeitet bis auf bei einem Formular Problemlos. Also klann es daran eigentlich nicht liegen. Bei dem besagten Formular wird jedoch nur ein Wert ins erste Feld eingetragen. der Rest bleibt leer obwohl ich einen vollständigen XML-String erhalte.
Hier mal das generierte AJAX-Skript:
Code:
// Funktion setRequestedit(XML-Request)
var requestedit = false;
function setRequestedit(gets)
{
if(window.XMLHttpRequest)
{
requestedit = new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
try
{
requestedit = new ActiveXObject('Msxml2.XMLHTTP');
}
catch(e)
{
try
{
requestedit = new ActiveXObject('Microsoft.XMLHTTP');
}
catch(e) {}
}
}
if(!requestedit)
{
alert('XMLHTTP-Instanz konte nicht erzeugt werden.');
return false;
}
else
{
var url = "benutzer_ajax.php";
requestedit.open('post', url, true);
requestedit.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
requestedit.send('action=get'+'&gets='+gets);
requestedit.onreadystatechange = interpretRequestedit;
}
}
function interpretRequestedit()
{
switch (requestedit.readyState)
{
case 4:
if (requestedit.status != 200)
{
alert('Fehler:'+requestedit.status);
}
else
{
var xmlcontent = requestedit.responseXML;
document.getElementById('form_login').value = xmlcontent.getElementsByTagName('form_login')[0].firstChild.nodeValue;
document.getElementById('form_mail').value = xmlcontent.getElementsByTagName('form_mail')[0].firstChild.nodeValue;
document.getElementById('form_vorname').value = xmlcontent.getElementsByTagName('form_vorname')[0].firstChild.nodeValue;
document.getElementById('form_name').value = xmlcontent.getElementsByTagName('form_name')[0].firstChild.nodeValue;
document.getElementById('form_id').value = xmlcontent.getElementsByTagName('form_id')[0].firstChild.nodeValue;
values = xmlcontent.getElementsByTagName('form_gruppen')[0].firstChild.nodeValue.split(',');
list = document.getElementById('form_gruppen');
for(s=0;s<values.length;s++)
{
for(t=0;t<list.length;t++)
{
if(list.options[t].value==values[s])
{
list.options[t].selected = true;
}
}
}
}
break;
default:
break;
}
}
Die XML-Datei:
Code:
<formatname>
<form_id>1</form_id>
<form_login>testuser</form_login>
<form_mail>test@test.de</form_mail>
<form_vorname>Test</form_vorname>
<form_name>User</form_name>
<form_gruppen>1,2,3</form_gruppen>
</formatname>
Und das Formular:
HTML:
<table cellpadding="4" width="100%" cellspacing="1" border="0" class="main_tbl">
<tr>
<td colspan="2" class="headline">Benutzer anlegen</td>
</tr>
<tr class="row_a">
<td><strong>Login-Name:</strong></td>
<td><input name="form_login" type="text" id="form_login" maxlength="20" /></td>
</tr>
<tr class="row_b">
<td><strong>Passwort:</strong></td>
<td>
<input name="form_passwd" type="text" id="form_passwd" maxlength="20" />
<img src="images/crypt.png" onclick="generate(8, 'form_passwd')" style="cursor:pointer;" alt="Passwort setzen" />
</td>
</tr>
<tr class="row_a">
<td><strong>Email:</strong></td>
<td><input name="form_mail" type="text" maxlength="30" id="form_email" /></td>
</tr>
<tr class="row_b">
<td><strong>Vorname:</strong></td>
<td><input name="form_vorname" type="text" id="form_vorname" maxlength="30" /></td>
</tr>
<tr class="row_a">
<td><strong>Nachname:</strong></td>
<td><input name="form_name" type="text" id="form_name" maxlength="30" /></td>
</tr>
<tr class="row_b">
<td><strong>Benutzergruppen:</strong></td>
<td>
<select name="form_gruppen" size="5" multiple="multiple" id="form_gruppen" style="float:left;">
<option value="1">Administrator</option>
<option value="3">Lager</option>
<option value="2">Verkauf</option>
</select>
Mehrfachauswahl durch gedrückte [strg]-Taste.
</td>
</tr>
<tr class="row_c">
<td><input type="hidden" name="form_id" id="form_id" /></td>
<td>
<div id="dbdiv">
<img src="images/save.png" alt="speichern" onclick="setRequestdb('action:db');" style="cursor:pointer;" />
<img src="images/close.png" alt="exit" style="cursor:pointer;" onclick="document.getElementById('userform').style.display='none';" />
</div>
<div id="dbloader" class="loader">
<img src="images/loader2.gif" alt="loading" /> Bitte warten
</div>
</td>
</tr>
</table>
Danke schonmal im Vorraus.