!!!fragen zu site 2 erstellen!!!

Dieses Thema im Forum "Webentwicklung" wurde erstellt von JuTzI666, 3. Mai 2006 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 3. Mai 2006
    hi @ll also ich hab ein problem und zwar folgendes:

    ich möchte, dass wenn eine ausgabe aus der mysql db mehr als 20 sind, zu unterst einen link kommt mit: index.php?site=2 oder so...

    und dass immer weiter bei site=3 usw...

    hab mal folgenden code, doch komme ned weiter

    PHP:
    <?
    @
    mysql_connect ( "localhost" , "jutzi666" , "meinpw" ) or die( "Verbindung zur Datenbank konnte nicht aufgebaut werden!!!" );
    @
    mysql_select_db ( "jutzi666" ) or die( "Datenbankselektierung fehlgeschlagen!" );
    session_start ();
    session_name ( "sMs" );

    $result  mysql_query
    ( "SELECT `Artist` 
    FROM `down` 
    ORDER BY `Artist` ASC 
    LIMIT 0 , 20"
    ) or die( mysql_error ());
    {}
    while(
    $site  mysql_fetch_array ( $result ))
    {
    echo 
    '<a href="index.php?site=2">Seite 2</a><br>' ;
    }
    ?>
    das mit dem link stimmt ned, dass weiss ich doch kann jmd helfen?

    10er gibts

    thx mal an alle...

    mfg JuTzI666
     

  2. Anzeige
    Dealz: stark reduzierte Angebote finden.
  3. #2 3. Mai 2006
    Also:

    Als 1.


    $all = mysql_query("SELECT COUNT(*) as total FROM tabelle");

    // eventuell noch mit WHERE blabla=blablabla



    Alle Einträge erfässt du mit:

    $all[total]



    Nun willst du 20 Pro Seite.
    Damit du nicht immer bei 0 anfängst, mach doch dies bitte an den Anfang: (die einfachste variante)

    $start = $_GET["start"];


    Danach folgendes:


    if(empty($start)) { $start = "0"; }


    Nun deine MySQL Abfrage kurz anpassen:


    $result = mysql_query
    ("SELECT `Artist`
    FROM `down`
    ORDER BY `Artist` ASC
    LIMIT $start , 20") or die(mysql_error());


    Und dann das mit den Links ist Mathe^^

    Nächste Seite anzeigen lassen:


    if($all[total]>$start) {
    echo "<a href='?start=".$start+20."'>Nächste Seite</a>";
    }


    So sollte es eigentlich gehen, bin bissel kaputt heute, deswegen kann ich was übersehen haben^

    Natürlich ist dieshier, die allereirnfachste Variante, die beste dauert mir jetzt zu lange^^

    MfG

    Cydoc
     
  4. #3 3. Mai 2006
    hi also thx erstmal 10er ist raus...doch es gibt n fehler...

    Parse error: syntax error, unexpected T_VARIABLE in /usr/export/www/hosting/jutzi666/sms/test.php on line 9

    und der code ist jetzt so:

    PHP:
    <?
    @
    mysql_connect ( "localhost" , "jutzi666" , "meinpw" ) or die( "Verbindung zur Datenbank konnte nicht aufgebaut werden!!!" );
    @
    mysql_select_db ( "jutzi666" ) or die( "Datenbankselektierung fehlgeschlagen!" );
    session_start ();
    session_name ( "sMs" );

    $all  mysql_query ( "SELECT COUNT(*) as total FROM donwz" );
    $all [ total ]
    $start  $_GET [ "start" ];
    if(empty(
    $start )) {  $start  "0" ; }
    $result  mysql_query
    ( "SELECT `Artist` 
    FROM `down` 
    ORDER BY `Artist` ASC 
    LIMIT 
    $start  , 20" ) or die( mysql_error ());
    if(
    $all [ total ]> $start ) {
    echo 
    "<a href='?start=" . $start + 20. "'>Nächste Seite</a>" ;
    }
    ?>
    zeile 9 ist

    $start = $_GET["start"];

    mfg JuTzI666
     
  5. #4 3. Mai 2006
    Na wenn da mal nicht das Semikolon in Zeile ACHT fehlt ;)
    Darüber hinaus bleibt mir die Funktion von $all[total] verschlossen, kann mich mal bitte jemand aufklären?
     
  6. #5 4. Mai 2006
    -.-


    Nochmal zu $all[total]


    Guck dir an, wie ich diee EInträge Counten lasse



    COUNT(*) as total


    AS TOTAL ist dabei wichtig!


    Du hast einfach $all[total] reingeschrieben, das meinte ich damit nicht...


    Damit du die Anzahl der EInträge bekommmst , z.b. ausgegeben, kannst du nciht echo $all; machen,

    sondern echo $all[total];
    !

    nimm einfach $all[total] da mal raus, also:

    PHP:
    <?
    session_start ();
    session_name ( "sMs" );
    @
    mysql_connect ( "localhost" , "jutzi666" , "meinpw" ) or die( "Verbindung zur Datenbank konnte nicht aufgebaut werden!!!" );
    @
    mysql_select_db ( "jutzi666" ) or die( "Datenbankselektierung fehlgeschlagen!" );


    $all  mysql_query ( "SELECT COUNT(*) as total FROM donwz" );
    $start  $_GET [ "start" ];
    if(empty(
    $start )) {  $start  "0" ; }
    $result  mysql_query
    ( "SELECT `Artist` 
    FROM `down` 
    ORDER BY `Artist` ASC 
    LIMIT 
    $start  , 20" ) or die( mysql_error ());
    $next  $start + 20 ;
    if(
    $all [ total ]> $next ) {
    echo 
    "<a href='?start=" . $next . "'>Nächste Seite</a>" ;
    }
    ?>
    ps: ich würd die session vor mysql machen ^^

    Wofür ist $all[totalt] wichtig?

    Genau hierführ:


    if($all[total]>$next) {


    Erklärung: Sind mehr einträge in der Datenbank vorhanden, als momentan angezeigt werden, so wird ein neuer Link für die nächste Seite angezeigt. Um unten ein Seitenindex erstellen zu können ([1][2][3] etc)

    Ist nochmehr Mathe anzuwenden ;)

    Kurform in Mathe:

    Gesamteinträge / 20 (Weil es 20 pro seite seien sollen)

    Nun hast du einen Wert, lass diesen runden auf 0 stellen hinter dem komma!

    Dann egnerierst du soviel links...

    Ein bisschen PhP:

    PHP:
    <?
    $seiten  $all [ total ] /  20 // Seitenanzahl auslesen lassen
    $seiten  round ( $seiten 0 );  // Runden auf ganze Zahlen !

    for( $i = 1 , $i <= $seiten , $i ++) {

    $start  $start + 20 ;

    echo 
    "<a href='?start=" . $start . "'>[" . $i . "]</a>" ;

    }

    ?>
     

  7. Videos zum Thema
Die Seite wird geladen...
Similar Threads - fragen site erstellen
  1. Erste Website, viele Fragen

    raised.fist , 6. September 2012 , im Forum: Webentwicklung
    Antworten:
    9
    Aufrufe:
    755
  2. Antworten:
    2
    Aufrufe:
    1.029
  3. Antworten:
    6
    Aufrufe:
    1.830
  4. Antworten:
    10
    Aufrufe:
    328
  5. Antworten:
    9
    Aufrufe:
    358
  • Annonce

  • Annonce