Blätterfunktion 2te

  • Themenstarter Themenstarter Grübelmonster
  • Beginndatum Beginndatum
G

Grübelmonster

<?
# Connect zur Database
$dbname="xxxxxxx";
$dbhost="xxxxxxxx";
$dbuser="xxxxxx";
$dbpass="xxxxxxx";
mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($dbname);
?>

<?
$query = "SELECT * FROM `members` ORDER BY `memberId`DESC";;
$re = mysql_query($query);
$anz = mysql_num_rows($re);
?>

<?
$c=0;
while($anz >0){
$c++;
$anz = $anz - 10;
}
?>

<?
# Prüft ob die Variable $page schon vorhanden ist.
# ($page wird später durch die links angegeben)
# Sofern diese Variable noch nicht vorhanden sein sollte wird sie erstellt und auf 1 gesetzt.
if(!isset($page))
$page = 1;

$pag = $page-1;

# Falls die momentan betrachtete Seite grösser als 1 ist,
# so werden die Links für "zurück" und "zur ersten Seite springen" erstellt.
if($page > 1 ){
echo "<a href=\"index.php?page=1\">&laquo;</a>&nbsp;";
echo "<a href=\"index.php?page=".$pag."\">‹</a>&nbsp;";
}

# Hier werden die Seiten als Direktlink ausgegeben.
for($b=1;$b<=$c;$b++){
$site = $b;

# Diese If-Abfrage ist nötig, um die Momentan betrachtete Seite nicht als Link anzugeben.
if(isset($page) && $page == $site){
# die Momentane Seite ohne Link:
echo $b."&nbsp;";
}
else
{
# Der auszugebende Link:
echo "<a href=\"index.php?page=$site\">$b</a>&nbsp;";
}
}

# Falls die momentan betrachtete Seite kleiner als die Gesamt-Anzahl der Seiten ist,
# so werden die Links für "vor" und "zur letzten Seite springen" erstellt.
$pag = $page+1;
if($page < $c ){
echo "<a href=\"index.php?page=".$pag."\">›</a>&nbsp;";
echo "<a href=\"index.php?page=$c\">&raquo;</a>&nbsp;";
}
?>
<br>

<?
$array = array();
while($l=mysql_fetch_array($re)){
array_push($array,$l);
}
?>

<?
# Anzahl der Einträge holen:
$anzahl = mysql_num_rows($re);

# Nur die 10 Einträge anzeigen lassen, die die akutelle Seite ausgeben soll:
for($x=($anzahl-10*$page+10)-1; $x>($anzahl-10*$page)-1; $x--){
# Nur ausgeben wenn $x grösser als 0 ist:
if($x >= 0){
?></p>
<p>Name: <a href="<? echo $array[$x]['url']; ?>" target="_blank"><? echo $array[$x]['memberName']; ?> </a>Web: <? echo $array[$x]['web']; ?>

<?
}
}
mysql_close();
?>

........



CREATE TABLE `members` (
`memberId` int(11) NOT NULL auto_increment,
`datum` date default NULL,
`url` varchar(255) default NULL,
`email` varchar(255) default NULL,
`web` varchar(255) default NULL,
`kat1id` int(11) default NULL,
`kat2id` int(11) default NULL,
`ranking` int(11) default NULL,
`memberName` varchar(255) default NULL,
PRIMARY KEY (`memberId`),
KEY `memberId` (`memberId`),
FULLTEXT KEY `email` (`email`)
) TYPE=MyISAM AUTO_INCREMENT=1917 ;

.....

So nun wollte ich aber,
das der Auswurf der Member,
sich auf die kat1id bezieht und sortiert nach ranking !

Kann mir da einer helfen ?
Ansonsten finde ich den Auswurf recht gut !
 
hpvw hat gesagt.:
PS: @Grübelmonster
Bitte nutze die Code Tags, [ php ]code[ /php ] für PHP-Quelltexte, [ html ]code[ /html ] für HTML-Quelltexte und [ code ]code[ /code ] für sonstige Quelltexte, natürlich ohne die Leerzeichen. Das macht die Quelltexte übersichtlicher. Für kuze Code-Teile im Fließtext (z.B. Variablen- oder Funktionsnamen) kannst Du [ mono ]kurzer Code fetzen[ /mono ] verwenden.
fanste hat gesagt.:
Nimm doch bitte mal die PHP Tags für deinen Code. Danke.
Gumbo hat gesagt.:
Übrigens wäre ich dir sehr verbunden, wenn du die foreneigenen Formatierungsmöglichkeiten nutzen würdest: [?php]Inhalt[?/php] für PHP-Quellcode; [?html]Inhalt[?/html] für HTML-Quellcode; [?code]Inhalt[?/code] für anderen Quellcode; [?mono]Inhalt[?/mono] für kurze, meist eingebettete Sequenzen von Quellcode oder präformatiertem Text.? (Und bitte kopiere diese Beispiele nicht, da ich sie mit „WORD JOINER“-Zeichen vor den Formatierungsfunktionen geschützt hab und sie damit nicht funktionieren – denke ich.)

Du wurdest in dem anderen Beitrag bereits mehrfach auf die Code-Tags verwiesen. Bitte editiere Deinen Post.

Gruß hpvw
 
  • Problem genauer erklären?!
  • PHP Highlight Tags des Boards benutzen?!
PHP:
$query = "SELECT * FROM `members` where `kat1id` = 'wieauchimmer' ORDER BY `memberId`DESC";
 
_voodoo hat gesagt.:
  • Problem genauer erklären?!
  • PHP Highlight Tags des Boards benutzen?!
PHP:
$query = "SELECT * FROM `members` where `kat1id` = 'wieauchimmer' ORDER BY `memberId`DESC";

Ich wollte den memberName nach kat1id` sortiern ( Funktioniert nun)

und ranking abwerts sortiert:anzeigen lassen .(Funktioniert noch nicht)





Das Problem ist einfach erklärt,
ich fange erst damit an dieses zu verstehen.
und lese viel und stelle dumme unformatierte Fragen und beschäftige mich nun seit 10 Stunden mit diesem Problem :)
Und komme Stück vor Stück weiter
und hoffe ein gutes Suchergebnis zu hinterlassen,
für spätere suchanfragen "Blätterfunktion".
 
PHP:
<?php

	# Connect zur Database
	$dbname = 'xxx';
	$dbhost = 'xxx';
	$dbuser = 'xxx';
	$dbpass = 'xxx';
	mysql_connect($dbhost,$dbuser,$dbpass);
	mysql_select_db($dbname);

	$page = ( isset($_REQUEST['page']) && (int)$_REQUEST['page'] >= 1 )
		? (int)$_REQUEST['page']
		: 1;

	$query = "
		SELECT
		        COUNT(*)
		  FROM
		        `members`
		  ORDER BY
		        `memberId` DESC
		";
	$result = mysql_query($query);
	$count = mysql_result($result, 0);

	$pages = ceil( $count / 10 );
	if( $page > 1 ) {
		echo '<a href="?page=1">&laquo;</a>&nbsp;';
		echo '<a href="?page='.$pages.'">&raquo;</a>&nbsp;';
	}

	for($i=1; $i<=$pages; $i++) {
		if( $i != $page ) {
			echo '<a href="?page='.$i.'">'.$i.'</a>&nbsp;';
		} else {
			echo $i.'&nbsp;';
		}
	}
	$query = "
		SELECT
		        `memberName`,
		        `url`,
		        `web`
		  FROM
		        `members`
		  WHERE
		        `kat1id` = 'x'
		    AND `kat2id` = 'y'
		  ORDER BY
		        `ranking` DESC
		  LIMIT
		        ".(($page-1)*10).", 10
		"; 
	$result = mysql_query($query);
	while( $row = mysql_fetch_array($result, MYSQL_ASSOC) ) {
		echo '<p>Name: <a href="'.$row['url'].'" target="_blank">'.$row['memberName'].'</a>Web: '.$row['web'].'</p>';
	}

	mysql_close();

?>
 
Hallo Cumbo,

Also,
es sind 2000 Daten drinn,
von den 30 angezeigt werden müssen,
das macht er auch,
aber er zeigt bei der Blätterfunktion alle 200x10 mögliche Datensätze an
(alle halt)
an und das zerreißt die Seite,
obwohl er die 30 memberName'n ordungsgemäß nach ranking und kat1id sortiert und anzeigt.


Gruß.
 
Zurück