Moin moin,
ich bin jetzt seit heute früh am suchen für ne Lösung. Mein Problem ist folgendes:
Code:
<?php
require 'db.php';
$connection = mysql_connect($dbhost, $dbuser, $dbpw) or die($errmsg1);
$db_select = mysql_select_db($tname, $connection) or die($errmsg2);
$result = mysql_query("SELECT content_id, content_time, content_autor, content_title, content_cat FROM lerian_content WHERE content_cat=2 AND content_cat=4 ORDER BY content_id DESC LIMIT 5");
while ($eintrag = mysql_fetch_array($result))
{
$cid=$eintrag['content_id'];
$datum=$eintrag['content_time'];
$autor =$eintrag['content_autor'];
$title=$eintrag['content_title'];
$kategorie=$eintrag['content_cat'];
$result1 = mysql_query("SELECT * FROM lerian_contentcat WHERE contentcat_id = $kategorie");
while ($kat_name = mysql_fetch_array($result1))
{
$kat=$kat_name['contentcat_name'];
}
echo date("d M Y - h:i:s",$datum)." - $kat - <a href='beitrag.php?cid=$cid'>$title</a><br>";
}
mysql_close;
?>
Wenn ich nun im Browser mir die Site anschauen will, kommt nichts. Keine Fehlermeldung, kein Text, kein nichts. Nur die Farbe stimmt. *gg* Aber ansonsten nichts.
Ich hab schon einiges ausprobiert, auch das mit den Anführungszeichen ( Anfang des Forums hier ;) ) aber immer wieder das gleiche. Kein Text, Keine Fehlermeldung.
Aber in der Datenbank is alles drin. In phpMyAdmin birngt er auch keine Fehlermeldung.
Wenn ich das AND und content_cat=4 rausnehme, dann gehts wieder, dann bringt er mir auch wieder den text.
$result = mysql_query("SELECT content_id, content_time, content_autor, content_title, content_cat FROM lerian_content WHERE content_cat=2 AND content_cat=4 ORDER BY content_id DESC LIMIT 5");
das:
$result = mysql_query("SELECT content_id, content_time, content_autor, content_title, content_cat FROM lerian_content WHERE content_cat= '2' AND content_cat= '4' ORDER BY content_id DESC LIMIT 5") or die( mysql_error() );
Das habe ich vorher schon. Stand ja hier gleich als erster Punkt drin, dass man das mit Anführungszeichen schreiben sollte. Kommt dabei aber genau das gleiche raus. Nämlich nichts. :(
Das meinte ich damit, als ich in meinem obrigen Beitrag geschrieben habe, dass ich schon einiges ausprobiert habe, auch das was oben ( damit meinte ich den ersten Topic) im Forum steht. ( Doof ausgedrückt, o.k. ;) )
Mir ist aber was anderes aufgefallen. Wenn ich das content_id=4 weg lasse und zum beispiel content_stat=1 eingebe, dann geht es.
Die content_id ist zur identifizierung für Beitrage ( sprich ob es ein newsbeitrag oder ein artikelbeitrag ist) und die stat ist dafür da ob der beitrag freigegeben ist ( =1) oder nicht (=0).
Kann das vielleicht zusammenhängen, dass er nur einmal die id abrufen kann und prüfen kann ob die 2 ist und nicht ob die 2 und 4 ist?
Mal eine Verständnisfrage: Möchtest du die Beiträge auslesen, bei denen content_cat=2 oder content_cat=4 ist?
Ich kann mir nämlich nicht erklären, wie content_cat gleichzeitig in einem Datensatz 2 und 4 sein soll.
Wenn du aber einfach nur alle Datensätze anzeigen willst bei denen content_cat=2 oder content_cat=4 ist, dann mach es so:
PHP-Code:
<?php
$result = mysql_query("SELECT content_id, content_time, content_autor, content_title, content_cat FROM lerian_content WHERE content_cat=2 OR content_cat=4 ORDER BY content_id DESC LIMIT 5");
?>
@ feuervogel:
sorry, das hatte ich übersehen. Habe das aber auch schon ohne das or die gemacht. Das mit dem or die hat mir einer aus dem #php.de channel im irc gesagt. Wobei die mir aber auch nicht weiterhelfen konnten.
@ xabbuh:
Ich möchte das Artikel ( cat=4) und News ( cat=2) gleichzeitig ausgegeben werden. Andere Beiträge (cat=3) oder Downloads ( cat=5) sollten hierbei nicht ausgelesen werden.
An sich kommt dann noch ein AND content_stat=1 hinzu. Das bedeutet er soll nur die aktivierten auslesen, also wenn 0 drin steht dann nicht.
Bist jetzt funzt das nur, wenn ich eine cat auslese, aber nicht wenn ich beide ( 2 und 4) auslesen möchte.