ERLEDIGT
NEIN
NEIN
ANTWORTEN
12
12
ZUGRIFFE
4510
4510
EMPFEHLEN
-
Hallo,
ich habe ein Problem. Wenn ich auf meiner Seite beispielsweise Einträge lösche, dann lässt sich die Seite/URL noch aufrufen.
Ist es irgendwie möglich zu prüfen, ob ein Eintrag/ID noch in der Dateinbank vorhanden ist?
Wenn nicht mehr vorhanden irgendwas sinnvolles machen. Wenn noch vorhanden nichts tun.
Hoffentlich versteht mich auch wer *gg*Geändert von Tomas1967 (04.02.07 um 13:11 Uhr)
-
20.12.06 00:54 #2
Hallo!
Könnte sein.....
Wenn Du Dein Query ausführst, wird im Erfolgsfall TRUE zurück gegeben..... andernfalls FALSE.
Gruss Dr DauPHP-Code:$query = mysql_query("DELETE FROM............ ");
if($query) {
echo "Eintrag wurde gelöscht";
} else {
echo "Eintrag konnt nicht gelöscht werden!";
}
Schri-Schra-Schrödi *g*
mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
Dinge, die mit Tabellen besser klappen als mit CSS
Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
Meine Links zum Thema Linux (Last update: 29.10.2011)
Kein Busen ist so flach wie das Niveau dieser Party!
----
Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
----
Ich habe 3 Kinder und kein Geld!
Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)
-
Neee, ich möchte ja nichts löschen.
Beispiel - ich habe einen Eintrag mit folgender Url - http://www.meineDomain.de/eintrag-12.html
In der Datenbank steht dieser mit - ID, Cid, Titel, Beschreibung u.s.w
Wenn ich diesen Eintrag jetzt aus der Datenbank löschen, dann lässt sich die URL - http://www.meineDomain.de/eintrag-12.html aber noch aufrufen.
Und genau das möchte ich unterbinden. Nur weiß ich nicht wie *heul*
Ich benötige eine Abprüfung, ob ein Eintrag noch in der Datenbank vorhanden ist.
Eintrag nicht vorhanden = mach was
Eintrag vorhanden = alles okay
-
Prüf über die SuperGlobale GET , ob der Wert einen Abgleich in der Datenbank hat
PHP-Code:$get = htmlentities($_GET['get']);
if ((!empty($get)) && (is_numeric($get))) {
$sql = mysql_query("SELECT ID FROM $tabelle WHERE ID = '".mysql_real_escape_string($get)."'");
if (mysql_num_rows($sql) == 1) {
echo " alles okay";
} else {
echo "mach was";
}
}
Geändert von campari (20.12.06 um 02:19 Uhr)
-
20.12.06 03:55 #5
Die HTML Datei ist also auf dem Webspace weiterhin vorhanden?
Hmm, keine Ahnung ob sich da irgendwas mit mod_rewrite machen lässt.
Wenn nicht, dann würde ich in jede Seite eine Datenbankabfrage einbauen (oder einbinden).
Dann noch Apache mittels .htaccess beibringen Dateien mit der Endung .html durch den PHP Parser zu jagen:PHP-Code:<?php
$domain = "http://www.meineDomain.de";
mysql_connect("localhost", "user", "pass") or die(mysql_error());
mysql_select_db("Datenbank") or die(mysql_error());
$check = mysql_query("SELECT * FROM `Tabelle` WEHRE `URL` = '".mysql_real_escape_string($domain.$_SERVER['PHP_SELF'])."'");
if($check == false) {
header("Location: ".$domain); /* Auf die Startseite umleiten, da die Seite nicht in der Datenbank steht */
} else {
?>
<html>
<!-- HTML-Code ausgeben -->
....
....
....
....
</html>
<?php
}
?>
Die Geschichte ist aber entsprechen serverlastig..... da bei jeder Seite die aufgerufen wird, eine Datenbankabfrage stattfindet.Code :1
AddType aplication/x-httpd-php .html
Schri-Schra-Schrödi *g*
mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
Dinge, die mit Tabellen besser klappen als mit CSS
Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
Meine Links zum Thema Linux (Last update: 29.10.2011)
Kein Busen ist so flach wie das Niveau dieser Party!
----
Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
----
Ich habe 3 Kinder und kein Geld!
Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)
-
@campari
Das geht nicht. Alles was kommt sind Fehlermeldungen.
-
20.12.06 11:23 #7
- Registriert seit
- Jan 2004
- Ort
- Paderborn
- Beiträge
- 1.210
Was kommen denn für Fehlermeldungen?
-
Ups, falsch eingefügt. Fehlermeldungen kommen nicht aber es wird auch nichts ausgegeben.
-
Nun wird mir diese Zeile aber in den Kategorien nicht mehr angezeigt.PHP-Code:
$id = htmlentities($_GET['id']);
if ((!empty($id)) && (is_numeric($id))) {
$sql = mysql_query("SELECT id FROM $tabelle WHERE id = '".mysql_real_escape_string($id)."'");
if (mysql_num_rows($sql) == 1) {
$content.= "<meta name=\"robots\" content=\"index,follow\" />\n";
} else {
$content.= "<meta name=\"robots\" content=\"NOINDEX, NOFOLLOW\" />\n";
}
}
$content.= "<meta name=\"robots\" content=\"index,follow\" />\n";
Gibt es da nicht eine Lösung, die nur was macht wenn id nicht vorhanden und sonst alles so belässt?
-
20.12.06 12:35 #10
- Registriert seit
- Jan 2004
- Ort
- Paderborn
- Beiträge
- 1.210
PHP-Code:$id = htmlentities($_GET['id']);
if ((!empty($id)) && (is_numeric($id))) {
$sql = mysql_query("SELECT id FROM $tabelle WHERE id = '".mysql_real_escape_string($id)."'");
if (mysql_num_rows($sql) == 0) {
# ID nicht vorhanden ...
}
}
-
Hmmmm, so meinte ich das nicht. Das ist echt schwer zu beschreiben. Sorry!
Ich habe eine PHP-Datei in der sich alle Meta-Angaben befinden.
Nun möchte ich die Zeile -
$content.= "<meta name=\"robots\" content=\"index,follow\" />\n";
nur auf -
$content.= "<meta name=\"robots\" content=\"NOINDEX, NOFOLLOW\" />\n";
ändern, wenn die ID in der Datenbank nicht mehr vorhanden ist. Es gibt Seiten mit den Einträgen die laufen über $id und Kategorien die laufen über $cid.
Der Code funktioniert ja schon, nur wenn ich eine Kategorie öffne, dann wird keine der beiden Zeilen mehr angezeigt.
Ist das überhaupt machbar? Nicht das ich euch Löcher in den Bauch frage *gg*Geändert von Tomas1967 (20.12.06 um 12:52 Uhr)
-
20.12.06 17:10 #12
<meta>-Tags werden nie angezeigt..... ausser man lässt sich den Quelltext anzeigen.

Ausserdem erwartest Du dass der Variablenname "id" an die URL angehängt wird:
Wenn dieser Variablenname fehlt, funktioniert Dein Script eh nicht.HTML-Code:http://www.meineDomain.de/eintrag-12.html?id
Schri-Schra-Schrödi *g*
mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
Dinge, die mit Tabellen besser klappen als mit CSS
Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
Meine Links zum Thema Linux (Last update: 29.10.2011)
Kein Busen ist so flach wie das Niveau dieser Party!
----
Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
----
Ich habe 3 Kinder und kein Geld!
Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)
-
Der Code funktioniert ja schon.
PHP-Code:$id = htmlentities($_GET['id']);
if ((!empty($id)) && (is_numeric($id))) {
$sql = mysql_query("SELECT id FROM $tabelle WHERE id = '".mysql_real_escape_string($id)."'");
if (mysql_num_rows($sql) == 1) {
$content.= "<meta name=\"robots\" content=\"index,follow\" />\n";
} else {
$content.= "<meta name=\"robots\" content=\"NOINDEX, NOFOLLOW\" />\n";
}
}
Aber nur auf den Seiten mit einer ID. Wenn ich auf einer Seite mit cid im Link wechsel, dann wird mir die Zeile (keine von beiden) in den Meta-Angaben nicht mehr angezeigt. Meine Idee war eigentlich ein NOINDEX, NOFOLLOW, wenn der Eintrag nicht mehr vorhanden ist, so dass die Sumas diese Seite wieder aus dem Index löschen.
Irgendwie muss das doch funktionieren *heul* Noch jemand eine Idee?Geändert von Tomas1967 (04.02.07 um 13:12 Uhr)
Ähnliche Themen
-
Prüfen, ob Eintrag vorhanden ist
Von lisali im Forum PHPAntworten: 11Letzter Beitrag: 16.06.10, 14:30 -
MySQL Eintrag vorhanden, neuen wählen und nochmal prüfen
Von Boostergermany im Forum PHPAntworten: 10Letzter Beitrag: 16.05.10, 19:12 -
Prüfen ob Intervall von setInterval() noch vorhanden ist
Von Veränderung im Forum Flash PlattformAntworten: 0Letzter Beitrag: 21.09.08, 01:07 -
eintrag schon vorhanden
Von wpb im Forum Relationale DatenbanksystemeAntworten: 2Letzter Beitrag: 28.01.06, 19:18 -
SQL abfrage in php, ob eintrag vorhanden ist
Von LiVe im Forum PHPAntworten: 7Letzter Beitrag: 19.05.05, 11:58





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren