Hallo, ich habe ein Problem, und zwar kann ich nichts aus der db aktuallisieren, aber das komische ist, dass es schon updaten kann, wenn ich den update befehl vor dem "while" command machen, aber alle ipdate/eintrag o.ä. befehle, die nach while kommen, werden ignoriert, woran kann das liegen?
Fehlermeldungen gibt es keine, und hier die SQL Tabelle:
und hier mein code:
Eigentlich sollte das script auf die $url gehen, und dort den Wert auslesen, welcher nach "<b>Marktpreis:</b>" folgt, das geht so weit auch, es liest alles perfekt aus, und kann es auch darstellen, nur es speichert es nicht in der db. Hier das, was es richtigerweise ausgibt:
(1->2505)Blaudrachenleder 2160 GP
(2->1745)Gründrachenleder 1794 GP
(3->2499) Blaudrachen-Harnisch 5370 GP
(4->1135) Gründrachen-Harnisch 4444 GP
-done-
Fehlermeldungen gibt es keine, und hier die SQL Tabelle:
und hier mein code:
PHP-Code:
<?php
include("../dbconnect.php");
$abfrageee = "SELECT * FROM ge_item ORDER BY id";
$ergebnisss = mysql_query($abfrageee);
while($row = mysql_fetch_object($ergebnisss))
{
$id = $row->id;
$item_id = $row->item_id;
$item_name = $row->item_name;
$url = "http://itemdb-rs.runescape.com/l=1/viewitem.ws?obj="."$item_id";;
$test = file_get_contents($url);
$start = '<b>Marktpreis:</b>';
$ende = '</span>';
if ( ($posStart = strpos($test, $start)) !== false)
{
if ( ($posEnd = strpos($test, $ende, $posStart+strlen($start))) !== false)
$preis = substr($test, $posStart+strlen($start),$posEnd-($posStart+strlen($start)));
}
$preis = $preis * 1000;
$aendern = "UPDATE ge_item Set
item_price = '$preis' WHERE id = '$id'";
$update = mysql_query($aendern);
echo "($id"."->"."$item_id)$item_name $preis GP<br>";
}
echo "-done-";
(1->2505)Blaudrachenleder 2160 GP
(2->1745)Gründrachenleder 1794 GP
(3->2499) Blaudrachen-Harnisch 5370 GP
(4->1135) Gründrachen-Harnisch 4444 GP
-done-
Kommentar