Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Suggest mit responseXML

Frage Entwicklung JavaScript

Mitglied: chibi-fighter

chibi-fighter (Level 1) - Jetzt verbinden

26.04.2011 um 11:40 Uhr, 3433 Aufrufe, 1 Kommentar

Ich habe nun ein wenig an diversen Ajax-Beispielen gearbeitet. Und wollte nun dass die Daten die ich von meiner Datenbank abfrage in XML Form im Browser dargstellt wird. Nur funktionierts nicht so wie ich mir das vorgestellt habe. Lösungsvorschläge?

Ich habe nun ein wenig an diversen Ajax-Beispielen gearbeitet. Und wollte nun dass die Daten die ich von meiner Datenbank abfrage in XML Form im Browser dargstellt wird. Nur funktionierts nicht so wie ich mir das vorgestellt habe. Lösungsvorschläge?

Im meiner html Datei habe ich:

01.
<input id="eingabe" type="text" size="30"/> 
02.
<select id="auswahl" size="4" onclick="uebernehmeAuswahl()"> 
03.
<option></option> 
04.
</select>
Mein .php:

01.
<?php 
02.
header("Content-Type: text/xml"); 
03.
$text = '<?xml version="1.0" ?> 
04.
<adressen>'; 
05.
$query = "SELECT zuname, vorname, email FROM adresse WHERE email LIKE '" . 
06.
$_GET['what'] . "%'"; 
07.
// echo $query . "<br/>"; 
08.
$db = mysql_connect("localhost","root",""); 
09.
// echo $db . "<br/>"; 
10.
if (!$db) { 
11.
die("Fehler beim Verbinden zur Datenbank!"); 
12.
13.
$db_selected = mysql_select_db("ajax1", $db); 
14.
if (!$db_selected) { 
15.
die("Fehler bei der Auswahl der Datenbank"); 
16.
17.
$result = mysql_query($query); 
18.
if (NULL == $result) { 
19.
die("Fehler bei der Abfrage der Datenbank"); 
20.
21.
while ($ausgabe = mysql_fetch_array($result, MYSQL_ASSOC)) { 
22.
$text .= "<zuname>" . $ausgabe['zuname'] ."</zuname>"; 
23.
$text .= "<vorname>" . $ausgabe['vorname'] ."</vorname>"; 
24.
$text .= "<email>" . $ausgabe['email'] ."</email>"; 
25.
26.
mysql_close($db); 
27.
$text .= '</adressen>'; 
28.
// Hier wird die Antwort schon als HTML gesendet: 
29.
echo $text; 
30.
?>
und hier nun mein .js (wo der Hund drin ist, da ich nicht weiß wie ich die getElementByID adressieren muss...) ich habe alle für mich verwirrenden Abfragen mit XYX markiert!
01.
var resObjekt; 
02.
function sndReq() 
03.
04.
resObjekt.open("get", "suggestXML.php?what=" + 
05.
document.getElementById("eingabe").value, true); 
06.
resObjekt.onreadystatechange = handleResponse; 
07.
resObjekt.send(null); 
08.
09.
function handleResponse() 
10.
11.
if (resObjekt.readyState == 4) { 
12.
xml = resObjekt.responseXML; 
13.
// löschen der bestehenden Knoten, bevor die neuen erzeugt werden: 
14.
while (document.getElementById("XYX").hasChildNodes()) { 
15.
kntn = document.getElementById("XYX").firstChild; 
16.
document.getElementById("XYX").removeChild(kntn); 
17.
18.
// Aufbau der neuen Knoten: 
19.
for (i = 0; i < xml.getElementsByTagName("XYX").length; i++) { 
20.
newOption = document.createElement("XYX"); 
21.
newOptionText = document.createTextNode( 
22.
xml.getElementsByTagName("XYX")[i].childNodes[0].data); 
23.
document.getElementById("XYX").appendChild(newOption); 
24.
document.getElementsByTagName("XYX")[i].appendChild(newOptionText); 
25.
26.
27.
28.
function uebernehmeAuswahl() 
29.
30.
document.getElementById("XYX").value = 
31.
document.getElementById("XYX").value; 
32.
document.getElementById("XYX").style.visibility = "hidden"; 
33.
34.
if(navigator.appName.search("Microsoft") > -1) { //Browserweiche ist klar... 
35.
resObjekt = new ActiveXObject("MSXML2.XMLHTTP"); 
36.
} else { 
37.
resObjekt = new XMLHttpRequest(); 
38.
}
Wär toll wenn jemand bei der Adressierung in der javaScript Datei helfen könnte... Wie gesagt in meinem ersten Beispiel hats so eingentlich ganz gut funktioniert, nur hier nicht mehr, wenn ich die Daten als XML aufbauen will...
Mitglied: nxclass
26.04.2011 um 13:06 Uhr
xml = resObjekt.responseXML;
xml.getElementsByTagName("XYX")[i].childNodes[0].data);
das wird so nicht funktionieren, da Du eine Zeichenkette bekommst und kein Objektbaum mit Funktionen

... am einfachsten ist es, den HTML Code für dein select in PHP zu erstellen und direkt einzufügen.
01.
document.getElementById('auswahl').innerHTML = resObjekt.responseXML;
http://de.selfhtml.org/javascript/objekte/index.htm
Bitte warten ..
Neue Wissensbeiträge
Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 57 MinutenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Sicherheit

Teamviewer Sessions können gekapert werden - Update tw. verfügbar

Information von sabines vor 4 TagenSicherheit6 Kommentare

In bestimmten Konstellationen können Teamviewer Sessions gekapert werden, wahrscheinlich aber ein recht unwahrscheinliches Szenario. Da der Teamviewer gerne für ...

Heiß diskutierte Inhalte
Vmware
Installation Windows 10 VMware
Frage von Ghost108Vmware17 Kommentare

Hallo zusammen, versuche gerade mit Hilfe des vshpere clients eine virtuelle Windows 10 maschine aufzusetzen. 1. virtuelle Maschine erstellt ...

Exchange Server
SBS 2011 E-Mails können gesendet werden, aber nicht von extern empfangen
Frage von andreas1234Exchange Server14 Kommentare

Hallo Community, ich habe das Problem, dass seit knapp zwei Wochen die E-Mails von meinem SBS 2011 einwandfrei gesendet ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Windows Server
Server 2012 über Eingabeaufforderung devmgmt.msc geht nicht
gelöst Frage von achim222Windows Server9 Kommentare

Hallo, ich habe hier einen Server 2012 der im Reparaturmodus startet. Es liegt an einem falschen VirtIO Treiber für ...