if abfrage aus datenbank
chris
- php
0 Rato Micefarmer0 chris0 chris0 chris0 Der Martin0 chris
Hi zusammen. Hoffe das ich mein Problem hier lösen kann. Ich habe ein partner-script (Partner mit Angabe von Link,wenn möglich Banner und Beschreibung der Seite) im netz gefunden, welches ich anpassen wollte (php & Mysql-Datenbank). Leider komme ich jetzt nicht weiter. Ich versuche es mal kurz zu erklären:
1. Es geht darum, das ich in die datenbank ein weiteres feld "showbanner" (0 oder 1) hinzugefügt habe, um dann später eine Abfrage einzubauen, wenn showbanner==1 dann dies, sonst das.
2. Kann man bei diesem Script im AdminPanel ein Template angeben (mit Platzhaltern für z.B. TITEL, URL, DATUM), was ich aber nicht mache, da ich im Quellcode die unter 1. angegebene Abfrage einbauen wollte. Hier nun mal der betreffende Ausschnitt:
if ($template == '') {
$template = "<table width=\"465\" border=\"0\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\"><tr><td><font size=\"2\" face=\"Arial, Helvetica, sans-serif\"><strong>{TITEL}</strong></font></td>";
$template .= "<td> <div align=\"right\"><font color=\"#00FF00\" size=\"-2\" face=\"Arial, Helvetica, sans-serif\"><strong>HitIn: {HITIN} </strong></font>";
$template .= "<strong><font size=\"-2\" face=\"Arial, Helvetica, sans-serif\">|</font><font color=\"#00FF00\" size=\"-2\" face=\"Arial, Helvetica, sans-serif\"> HitOut: {HITOUT}</font></strong></div></td></tr>";
$template .= "<tr> <td colspan=\"2\"><p align=\"justify\"><font size=\"2\" face=\"Arial, Helvetica, sans-serif\">";
/*AB HIER NUN DER BETROFFENE TEIL*/
if ($dat["showbanner"] == 0){
$template .= "{BESCHR}</font></p></td></tr><tr><td colspan=\"2\"><font color=\"#00FF00\" size=\"-2\" face=\"Arial, Helvetica, sans-serif\"><strong>Partner seit: {DATUM}</strong></font></td></tr><tr> <td colspan=\"2\"><hr></td></tr></table><br>\n";
}else{
$template .= "<img src=\"{BANNER}\" width=\"465\" height=\"60\" border=\"0\" alt=\"Hier soll ein Bild zu sehen sein\"><br>{BESCHR}</font></p></td></tr><tr><td colspan=\"2\"><font color=\"#00FF00\" size=\"-2\" face=\"Arial, Helvetica, sans-serif\"><strong>Partner seit: {DATUM}</strong></font></td></tr><tr> <td colspan=\"2\"><hr></td></tr></table><br>\n";
}
}
Hoffe die Angaben reichen um nun meine Frage zu beantworten?!
Bei dem Script stehen die eingetragenen Partner untereinander und es sollte halt mit der Abfrage erreicht werden, dass wenn $dat["showbanner"] == 0 der betroffene Teil mit dem <img> nicht im Template berücksichtigt wird, und auch kein Platz für ein Bild freigehalten wird. Doch es funtktioniert so nicht.
Entweder werden alle Bilder ausgeblendet oder alle eingeblendet ist, obwohl ich bei einigen "showbanner" auf 0 gesetzt habe und einige auf 1, so dass es eigentlich ein Unterschied zu sehen sein müsste.
Hoffe es war etwas verständlich erklärt. Bin halt nicht der Profi und habe es so gut wie möglich versucht einzubauen. Aber jetzt brauche ich EURE HILFE.
Ich danke euch. Wenn Fragen sind, einfach fragen.
PS: Wenn ihr wollt, kann ich auch die betreffende Datei hochladen, dann kann man den Zusammenhang vielleicht besser sehen.
/AB HIER NUN DER BETROFFENE TEIL/
if ($dat["showbanner"] == 0){
$template .= "{BESCHR}</font></p></td></tr><tr><td colspan="2"><font color="#00FF00" size="-2" face="Arial, Helvetica, sans-serif"><strong>Partner seit: {DATUM}</strong></font></td></tr><tr> <td colspan="2"><hr></td></tr></table><br>\n";
}else{
$template .= "<img src="{BANNER}" width="465" height="60" border="0" alt="Hier soll ein Bild zu sehen sein"><br>{BESCHR}</font></p></td></tr><tr><td colspan="2"><font color="#00FF00" size="-2" face="Arial, Helvetica, sans-serif"><strong>Partner seit: {DATUM}</strong></font></td></tr><tr> <td colspan="2"><hr></td></tr></table><br>\n";
}
}
Erst mal vorneweg, der HTMl-Quelltext ist vollkommener Schwachsinn. Z.B. ist es sicherlich unnötig, so oft die verwendete Schriftart anzugeben. Weiters könnte der Teil, der hier als Zitat steht, ruhig etwas kürzer sein. Wenn bei der Abfrage der IF-Zweig befolgt wird, so wird am Ende des Zweiges ein Text hinzugefügt, der ebenso im ELSE-Teil hinzugefügt wird. Besser änderst du das so, dass es nur einen IF-Zwei gibt und nach der Abfrage dann noch der Code hinzugefügt wird, der in jedem Fall hinzugefügt wird.
Doch nun zum eigentlichen Problem:
Ich vermute mal, dass die Formatierungen, die in dem von dir geposteten Scriptschnippsel stehen, sich auf ALLE Partnereinblendungen beziehen. Wenn du dort also angibst, dass die Banner entweder angezeigt werden oder nicht, so gilt das dann natürlich für alle Partner, die angezeigt werden. Du wirst wohl an einem anderen Programmteil was ändern müssen, um das zu erreichen, was du erreichen willst.
mfg
Rato
--
§§§
Meine Postings basieren lediglich auf mein Wissen und können völliger Blödsinn sein.
§§§
Hi, danke das du mir helfen willst.
Erst mal vorneweg, der HTMl-Quelltext ist vollkommener Schwachsinn.
Irgendwie habe ich geahnt, das sowas kommt. :o) Aber ich bin nicht so bewandert, das ich mir ein eigenes Script schreiben kann und von daher froh, das ich etwas gefunden habe, was erstmal funktioniert und für meine Bedürfnisse ausreicht.
Doch nun zum eigentlichen Problem:
Ich vermute mal, dass die Formatierungen, die in dem von dir geposteten Scriptschnippsel stehen, sich auf ALLE Partnereinblendungen beziehen. Wenn du dort also angibst, dass die Banner entweder angezeigt werden oder nicht, so gilt das dann natürlich für alle Partner, die angezeigt werden. Du wirst wohl an einem anderen Programmteil was ändern müssen, um das zu erreichen, was du erreichen willst.
Das denke ich doch eher nicht, weil dort doch auch mit diesen Platzhaltern gearbeitet wird und somit für jeden Partner extra gilt oder? Hättest du Lust mir da zu helfen? Dann könnte ich dir ja mal die Datei zukommen lassen die es betrifft und du könntest mal reinschauen? Aber ich glaub, dann fällst du vom Stuhl wenn du den Code siehst, wenn du bei dem kleinen Teil schon bedenken hast! :o)
Gruß
Doch nun zum eigentlichen Problem:
Ich vermute mal, dass die Formatierungen, die in dem von dir geposteten Scriptschnippsel stehen, sich auf ALLE Partnereinblendungen beziehen. Wenn du dort also angibst, dass die Banner entweder angezeigt werden oder nicht, so gilt das dann natürlich für alle Partner, die angezeigt werden. Du wirst wohl an einem anderen Programmteil was ändern müssen, um das zu erreichen, was du erreichen willst.
So, vielleicht würde es ja auch so gehen:
In der Datenbank gibt es für jeden Partner auch eine ID.
Kann man die Abfrage der ID nicht auch verbinden mit der Abfrage des Feldes "showbanner"? Dann müsste es doch vielleicht gehen oder? Weil dann ja explizit nur dieser Partner angesprochen wird oder täusche ich mich da?
Aber wie müsste da der Aufruf aussehen?
if ($dat["id"]+$dat["showbanner"] == 0){
So funktioniert es jedenfalls nicht... Meint ihr, das es mit dem richtigen Aufruf funktionieren kann?
Würde mich über eure Hilfe sehe freuen! Danke
Aber wie müsste da der Aufruf aussehen?
if ($dat["id"]+$dat["showbanner"] == 0){
So funktioniert es jedenfalls nicht...
Habe es jetzt auch so probiert:
if ($dat["id"] and $dat["showbanner"] == 0){
if ($dat["id"] && $dat["showbanner"] == 0){
Weiß jemand Rat?
Hallo,
if ($dat["id"]+$dat["showbanner"] == 0)
"Wenn die Summe von $dat["id"] und $dat["showbanner"] gleich 0 ist"
if ($dat["id"] and $dat["showbanner"] == 0){
"Wenn $dat["id"] existiert und $dat["showbanner"] gleich 0 ist"
if ($dat["id"] && $dat["showbanner"] == 0){
Siehe oben: "Wenn $dat["id"] existiert und $dat["showbanner"] gleich 0 ist"
Der UND-Operator kann wahlweise als "and" oder "&&" geschrieben werden, aber beides bedeutet dasselbe.
Ich verstehe leider immer noch nicht, welche Beziehung zwischen $dat["id"] und $dat["showbanner"] du eigentlich ausdrücken willst.
So long,
Martin
Ich verstehe leider immer noch nicht, welche Beziehung zwischen $dat["id"] und $dat["showbanner"] du eigentlich ausdrücken willst.
Hi! Na darauf bin ich gekommen, weil @Rato dies schrieb:
Doch nun zum eigentlichen Problem:
Ich vermute mal, dass die Formatierungen, die in dem von dir geposteten Scriptschnippsel stehen, sich auf ALLE Partnereinblendungen beziehen. Wenn du dort also angibst, dass die Banner entweder angezeigt werden oder nicht, so gilt das dann natürlich für alle Partner, die angezeigt werden. Du wirst wohl an einem anderen Programmteil was ändern müssen, um das zu erreichen, was du erreichen willst.
Da dachte ich mir, wenn man aus der Datenbank nicht nur $dat["showbanner"] ausliest, sondern die ID mittels $dat["id"], müsste es ja dann eindeutig sein, dass man nur diesen einen Partner meint und nicht alle Partner zusammen.
Deshalb kam mir die Idee, dass man ja beides abfragen könnte und dann evtl auf ein eindeutiges Ergebnis kommt. Aber da fehlt mir wie gesagt die Abfrage, wie ich die Daten aus der Tabelle der Datenbank bekomme.
Gruß