ERLEDIGT
NEIN
NEIN
ANTWORTEN
4
4
ZUGRIFFE
494
494
EMPFEHLEN
-
Hi
Ich hab wiedermal ein kleines Problem
und hoffe, dass ihr mir wieder helfen könnt.
Ich habe einen kleinen Newscrawler gebastelt, der die News aus dem Heise RSS Newsfeed
Diesmal möchte ich überprüfen, ob ein Datensatz mit dem Newslink (Bsp: http://heise.de/news.php?id=59312) schonmal in der Datenbank vorkommt. Dazu hab ich folgendes Script gemacht:
Es funktioniert zwar, aber nur unter gewissen Umständen.PHP-Code:$rowqry = mysql_query("SELECT newsurl FROM news WHERE newsurl='$url'");
if (mysql_num_rows($rowqry) == 0) {
//INSERT BEFEHL
}else{
//NICHTS
}
Beispiel:
Folgender Datensatz ist bereits vorhanden und sollte jetzt nochmal eingetragen werden:
http://heise.de/news.php?id=59312
Wenn ich nun das Script in einem neuen Browserfenster zum ersten Mal öffne, wird dieser Datensatz trotzdem eingefügt. Wenn ich danach hingegen nochmals F5 im selben Fenster drücke, wird er nicht nochmals eingefügt weil ihn das Script in der DB schonmal erkennt. Öffne ich aber wieder ein neues Internetfenster, wird der Datensatz erst wieder hineingeschrieben, und bei nochmaligem F5 drücken wird er in der DB bereits erkannt.
Ich sollte noch erwähnen, dass dieses Script in einer Schleife ist, da ein RSS Feed ja bekanntlich mehr als eine News (meist 10 oder 15, Seitenabhängig) beinhaltet. Vielleicht ist das ja der Grund für die nicht korrekte Funktionalität.
Hat jemand nen Fehler gesehen oder sonst irgendnen Tipp für mich?
Thx schonma im Voraus
Gruss
Gifty
-
Dass es manchmal "richtig funktioniert" könnte daran liegen, dass das Skript gar nicht ein zweites mal ausgeführt wird, sondern aus dem Browser-Cache kommt.
Versuche doch malBist Du Dir denn auch sicher, dass in $url der richtige Wert steht?Code :1
SELECT newsurl FROM news WHERE newsurl LIKE '$url'
Gruß hpvwWarum gibt (fast) keiner im Datenbankforum an, welches DBMS er benutzt?
Ich gehe im Zweifelsfall ohne Nachfrage von MySQL > 4.1 i.V.m. PHP aus.
Gewöhnt euch bitte auch an, die Fehlermeldung von mysql_error() zu posten.
-
Moin
Auch mit LIKE funktioniert das Script nicht so wie es soll.
Schonmal THX für deinen Tipp
Ich habs auchmal mit SELECT * FROM versucht, aber es geht auch net...
-
Ich habs immernochnet hingekriegt, hat nicht jemand nochnen Tipp?
-
Wenn nicht, gibt es noch irgendne andere Variante zu überprüfen, ob schon ein gleicher Datensatz vorhanden ist?
Ähnliche Themen
-
[MySQL] Datensatz eintragen, wenn nicht vorhanden
Von Steusi im Forum Relationale DatenbanksystemeAntworten: 2Letzter Beitrag: 03.11.10, 15:18 -
Datensatz schon vorhanden überprüfen
Von Lobedan im Forum PHPAntworten: 2Letzter Beitrag: 14.06.09, 04:30 -
INSERT aber nur wenn Datensatz noch nicht vorhanden ist.
Von mafin im Forum Relationale DatenbanksystemeAntworten: 6Letzter Beitrag: 17.12.08, 10:41 -
Überprüfung einer Datei ob diese schon inder der Datenbank vorhanden ist ..
Von Ikkunaprincessa im Forum PHPAntworten: 13Letzter Beitrag: 05.12.08, 20:10 -
[PHP/MySQL]Überprüfen ob Datensatz in Tabelle schon vorhanden ist?
Von StefanR im Forum PHPAntworten: 5Letzter Beitrag: 08.12.03, 23:13





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren