Schlagwörter nach Treffer sortieren ?

konex

Grünschnabel
Ich schreibe gerade an einem Helpdesk,
Sinn davon ist das ich nicht so viel support bei meiner Seite habe.
Wie das ding Funktionieren soll?
Ich gebe meine Frage ein z.B. "Wie funktioniert das Interne" mein script splitet die 4 Wörter aus und eine Datenbank wird dann nach %wie% etc. duchsucht. Jetzt muss ich es nur hinbekommen, dass das Ergebniss sortiert wird. Ich habe es mit einem array gelöst

PHP:
$array[autoid][dbid] = "anzahl wie oft es gefunden wurde";

mein Problem... "anzahl wie oft es gefunden wurde" ist jetzt zum Beispiel "9" Wie kann ich das array dannach sortieren, oder habt ihr eine andere Idee?

jetzt noch schnell der code, für den den es interessiert


PHP:
<?php
$search = explode(" ",$search);

$i = 0;
include("dbconnect.php");


while($search[$i] != ""){
$search[$i] = "%".$search[$i]."%";
	$abfrage = "SELECT * FROM gate4_helpdesk WHERE schlagwoerter LIKE '$search[$i]'";
	$ergebnis = mysql_query($abfrage);
	while($row = mysql_fetch_object($ergebnis))
		{
		$id = "$row->id";
		$temp = "id_".$id;
		$$temp = $$temp*1+1;
		$ids[$id][$id]= $$temp;
		}
		$i = $i+1;
	}
	
	echo "<strong>".$ids[1][1]."</strong>";
	
	ksort($ids);

		$keys = array_keys ($ids);
		$array = array_shift($keys);
		$first = array_keys ($ids[$array]);
		$id_db = array_shift($first);

$abfrage = "SELECT * FROM gate4_helpdesk WHERE id LIKE '$id_db'";
	$ergebnis = mysql_query($abfrage);
	while($row = mysql_fetch_object($ergebnis))
		{
		$help = "$row->help";
		}
	
echo "<strong>".$help."</strong><br><br>";
unset ($ids[$array]);
$count = count($ids);
$i = 1;

while($i <= $count)
	{
		$keys = array_keys ($ids);
		$array = array_shift($keys);
		$first = array_keys ($ids[$array]);
		$id_db = array_shift($first);
	$abfrage = "SELECT * FROM gate4_helpdesk WHERE id LIKE '$id_db'";
		$ergebnis = mysql_query($abfrage);
		while($row = mysql_fetch_object($ergebnis))
			{
			$help = "$row->help";
			}
	echo $help."<br>";
	$i = $i*1+1;
	unset ($ids[$array]);
	}





?>

ich bedanke mich jetzt schon für eure hilfe.
gruß Kon
 
Original geschrieben von konex
mein Problem... "anzahl wie oft es gefunden wurde" ist jetzt zum Beispiel "9" Wie kann ich das array dannach sortieren [...] ?
Mit den PHP-eigenen Sortierfunktionen?!
» [phpf]array[/phpf]

(Z.B. sort, usort, array_multisort usw.)
 
Stimmt das ist ja das Prob !

Jau sort() etc. sind zwar coole funktionen aber die sortieren mir das array dann nach den arrays in den arrays. und nicht nach dem inhalt. also Beispiel

$array[2][5]=2;
$array[1][3] = 9;

sort($array);



Jetzt stehen sie so im array

$array[0][3]=9;
$array[1][5]=2;

es wird also net nach dem Inhalt sortiert, also net nach 9 und 2 sondern nach [3] und [5] und genau das ist mein Problem. Wie kann ich das abstellen?

danke und ciao
gruß Kon
 
Zuletzt bearbeitet:
Zurück