SQL Abfrage fehlerhaft?

Zocker4Life

Well-known member
ID: 126615
L
10 Juni 2006
816
35
Folgendes möchte ich machen:
Ich möchte über die MySQL Datenbank etwas abfragen und dies dann in php ausgeben.

Was ich abragen möchte ist in der Datenbank unter:
trader_ads und dann die spalte aufrufe, aber für jede anzeige einzeln(anzeige ist die ads_id), welche ebenfalls in der trader_ads gespeichert ist.

Nun habe ich die Abfrage wie folgt aufgebaut:
$result = mysql_query( "SELECT aufrufe FROM ".$PREF."_ads WHERE ad_id=".$ad['ad_id'].");

Die Abfrage habe ich in einer php Datei. Die Anzahl der Aufrufe soll dann in einer .tpl Datei angezeigt werden.

Allerdings scheint die Abfrage falsch zu sein?
 
das ist doch nur die sql abfrage, jetzt musste das noch mit mysql_fetch_array() o.Ä. abrufen...

man müsste jetzt noch wissen was das für ein tpl sys ist.... iwie musste halt die Ergebnisse dort ausgeben.

Was willst du denn mit dem letzten Punkt und den letzten Gänsefüßchen erreichen?

Jap da ist wohl ein ." zu viel oder ein " zu wenig
 
das ist doch nur die sql abfrage, jetzt musste das noch mit mysql_fetch_array() o.Ä. abrufen...

man müsste jetzt noch wissen was das für ein tpl sys ist.... iwie musste halt die Ergebnisse dort ausgeben.



Jap da ist wohl ein ." zu viel oder ein " zu wenig

das ." war zu viel, hab ich geändert, danke.

abrufen mit:
while ( $row = mysql_fetch_array ($result)); ?

wie kann ich dann das ganze in der .tpl ausgeben?
 
Also ich habe alles noch einmal überarbeitet.
Jetzt zeigt es mir das bei allen "Ads" aber nur das erste Ergebnis von der Spalte Aufrufe an, d.h. bei allen Ads 16 Aufrufe. Allerdings sollte es die Aufrufe für jedes Ad extra anzeigen.

Was mache ich denn nun falsch?

Code lautet:
$aufauf = mysql_query( "SELECT * FROM trader_ads WHERE user_id=".$user['user_id']." ") or error("my_currentads.php :: Zeile 159", mysql_error() );

$auf = mysql_fetch_array($aufauf);

$smarty->assign('AUFRUFE', $auf['aufrufe']);
 
Du rufst alle Spalten aus der DB und assignst dann nur einen Wert. Da kann schon was nicht stimmen.
Außerdem beschwerst du dich, dass du nur den ersten Eintrag hast. Guck du mal in den Code. Wie viele Einträge liest du denn aus dem Resultset? ;)

Willst du mehrere Einträge anzeigen, musst du
  • alle selektieren (ok, hast du),
  • alle lesen (hast du nicht)
  • alle assignen (hast du auch nicht),
  • alle ausgeben (weiß ich nicht, ob du hast; kein Template gepostet)