Hallo, habe folgendes vor:
Tagcloud erstellt durch die schon in joomla com_search integrierten logSearch function.
Also logsearch speichert die suchanfragen mit anzahl der anfragen in die DB unter #_core_log_searches.
Ein Tagcloud script welches ich im Internet fand soll nun die meistgesuchten suchanfragen in einer Tagcloud darstellen.

Hab es leider selbst nicht hinbekommen, vielleicht kann mir ja jemand helfen.

Hier ist mein versuch des Tagcloud Scripts:
$abfrage = "SELECT search_term FROM #_core_log_searches";
$result = mysql_query($abfrage);
while ($row = mysql_fetch_array ($result))
{
$data[] = $row['search_term'];
}

$data = implode('',$data);

// Woerter splitten
$words = preg_split("/n/", $data);
$acv = array_count_values( $words );

// Nicht erwuenschte Woerter loeschen
$bannedwords = array('');
$i = 0;
foreach($acv as $k=>$v) {
if (!array_search(strtolower($k),$bannedwords) and eregi("[a-zA-Z]",$k) and $i<=40 and strlen($k)>2) {
if (isset($new_acv[strtolower($k)] ))
$new_acv[strtolower($k)] += $v;
else
$new_acv[strtolower($k)] = $v;
$i++;
}
}

// Alphabetisch sortieren
ksort( $new_acv );

// Clouds erstellen
foreach( $new_acv as $k=>$v) {
$size = $v*1;
$weight = $v*4;

if ($size > 4) $size = 4;
if ($weight > 50) $weight = 50;

$kurl = urlencode("$k");
echo "<a href=\"suche.php?q=$kurl\" style=\"font-size: {$size}em; font-weight: {$weight}\">$k</a> ";
}
Obiges funktioniert so leider nicht und ich hab auch keine Ahnung wie man das mit den "hits" regelt. Also das ordnen der suchanfragen nach der häufigkeit.

Hier nochmal das Original Tagcloud script:
$abfrage = "SELECT interessen, interessen2, interessen3 FROM tabelle";
$result = mysql_query($abfrage);
while ($row = mysql_fetch_array ($result))
{
$data[] = $row['interessen']."n".$row['interessen2']."n".$row['interessen3'];
}

$data = implode('',$data);

// Woerter splitten
$words = preg_split("/n/", $data);
$acv = array_count_values( $words );

// Nicht erwuenschte Woerter loeschen
$bannedwords = array('');
$i = 0;
foreach($acv as $k=>$v) {
if (!array_search(strtolower($k),$bannedwords) and eregi("[a-zA-Z]",$k) and $i<=40 and strlen($k)>2) {
if (isset($new_acv[strtolower($k)] ))
$new_acv[strtolower($k)] += $v;
else
$new_acv[strtolower($k)] = $v;
$i++;
}
}

// Alphabetisch sortieren
ksort( $new_acv );

// Clouds erstellen
foreach( $new_acv as $k=>$v) {
$size = $v*1;
$weight = $v*4;

if ($size > 4) $size = 4;
if ($weight > 50) $weight = 50;

$kurl = urlencode("$k");
echo "<a href=\"suche.php?q=$kurl\" style=\"font-size: {$size}em; font-weight: {$weight}\">$k</a> ";
}
Wie man sieht habe ich nicht viel Ahnung von PHP, hoffe mir kann da geholfen werden.

danke
Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!