ich stehe gerade irgendwie auf dem schlauch,weil mein XML parser gibt mir die ganze zeit "null" ausgibt....
hier mal die .php für alle fälle (ja ist nicht sonderlich elegant,aber anders hat er mir die ganze zeit fehler um die ihren geworfen -.-)
[PHP]
<?php
$name = $_POST["name"];
$mysqli = new mysqli();
if ($stmt = $mysqli->prepare("SELECT * FROM test WHERE Name=?")) {
$stmt->bind_param("s", $name);
$stmt->execute();
$stmt->bind_result($guy, $reporter, $link, $section);
while($stmt->fetch()) {
$newxml = '<?xml version="1.0"?>';
$newxml .= "<request>
<name>$guy</name>
<reporter>$reporter</reporter>
<link>$link</link>
<section>$section</section>
</request> ";
echo $newxml;
}
$stmt->close();
}
$mysqli->close();
?>[/PHP]
meine methode zum abfragen der daten:
[code=Java]try {
URL url = new URL(
"insert.php");
URLConnection uc = url.openConnection();
uc.setDoOutput(true);
OutputStream out = uc.getOutputStream();
String data = "name=banGuy";
out.write(data.getBytes());
out.flush();
InputStream is = uc.getInputStream();
Document d = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(is);
Element e = d.getDocumentElement();
System.out.print( e );
} catch (NullPointerException e) {
e.printStackTrace();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ParserConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}[/code]
was mache ich falsch? :/
EDIT: habe gerade das XML aus einem String generieren lassen,sprich erst die empfangenen Daten in String umgewandelt und dann xml daras gemacht.aber an die werte komme ich immer noch nicht dran ....
EDIT2: ok mit folgendem anhang an die XML-lese-Methode kann ich an die Werte rankommen:
[code=Java]XPathFactory factory = XPathFactory.newInstance();
XPath xpath = factory.newXPath();
XPathExpression expr = xpath
.compile("/request/af");
String name = (String) expr.evaluate(doc, XPathConstants.STRING);
System.out.println(name);[/code]
nur stellt sich mir jetzt die Frage,warum ich im echo der PHP nicht einfach sowas mache wie "var1=key1;var2=key2;var3=key3;..."
und dies mit einem strinktokenizer oder sowas auseinander pflücke?sehe gerade den vorteil der XML geschichte nicht ???:L