tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
JA
ANTWORTEN
21
ZUGRIFFE
897
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    maarian maarian ist offline Mitglied Gold
    Registriert seit
    Dec 2006
    Beiträge
    152
    Hallo,

    Ich möchte eine Abfrage machen für eine Shoutbox so das ohne die Seite neu zuladen 8 verschiedene Ergebnisse eingeblendet werden...

    Es ist wie eine art Newsticker hier mal der Code der gibt mir immer nur 1 Ergebnis.

    PHP-Code:

    <?php $abfrage"SELECT * FROM shoutout ORDER BY rand(now()) LIMIT 8";
    $ergebnis mysql_query($abfrage);
     

     while(
    $row mysql_fetch_object($ergebnis)){
    $wer $row->username;
    $text2 $row->message;
    }
    ?>

    </style><body onLoad="newsticker()">
    <script language="JavaScript">
    <!-- Begin
    // news ticker function
    var newslist=new Array();
    var cnt=0;   // current news item
    var curr = "";
    var i=-1;   // current letter being typed

    newslist[0]=new Array("<b><?php echo $wer;?></b>:<?php echo $text2;?>","nickpage.php?nick=<?php echo $wer;?>")
    newslist[1]=new Array("<b><?php echo $wer;?></b>:<?php echo $text2;?>","nickpage.php?nick=<?php echo $wer;?>")
    newslist[2]=new Array("<b><?php echo $wer;?></b>:<?php echo $text2;?>","nickpage.php?nick=<?php echo $wer;?>")
    newslist[3]=new Array("<b><?php echo $wer;?></b>:<?php echo $text2;?>","nickpage.php?nick=<?php echo $wer;?>")
    newslist[4]=new Array("<b><?php echo $wer;?></b>:<?php echo $text2;?>","nickpage.php?nick=<?php echo $wer;?>")
    newslist[5]=new Array("<b><?php echo $wer;?></b>:<?php echo $text2;?>","nickpage.php?nick=<?php echo $wer;?>")
    newslist[6]=new Array("<b><?php echo $wer;?></b>:<?php echo $text2;?>","nickpage.php?nick=<?php echo $wer;?>")
    function newsticker()
    ......................................................
    {
     

  2. #2
    Admi Admi ist offline Mitglied Brokat
    Registriert seit
    Jan 2005
    Beiträge
    330
    rand(now()) ... was soll denn das werden Du weißt schon wozu ORDER BY gut ist und was die MySQL-Funktion NOW() bewirkt? Weder die Abfrage, noch der Code ergibt einen wirklichen Sinn.

    Inhalte nachzuladen ohne die komplette Seite neu aufbauen zu lassen, geht über AJAX ->Ajaxforum.
     

  3. #3
    Registriert seit
    Mar 2005
    Ort
    Bühl/Baden
    Beiträge
    2.330
    Was soll denn das werden?
    PHP-Code:
    while($row mysql_fetch_object($ergebnis)){
      
    $wer $row->username;
      
    $text2 $row->message;

    Du gehst alle Ergebnisse des Querys durch. Gut, dagegen hab ich nichts einzuwenden. Aber was bringt dir das, wenn du das ganze nicht verwendest? Du gehst hin und überschreibst die Variable immer wieder mit neuen Werten, ohne dass du diese verwendest. Erst nachdem alle Ergebnisse durch sind, wird der letzte Wert in dein JS-Array eingetragen; 8mal.

    So sollte das ganze schon besser klappen:
    PHP-Code:
    <?php
        $abfrage
    "SELECT * FROM shoutout ORDER BY rand(now()) LIMIT 8";
        
    $ergebnis mysql_query($abfrage);
    ?>
    </style>
    <body onLoad="newsticker()">
        <script language="JavaScript">
            <!-- Begin
            // news ticker function
            var newslist=new Array();
            var cnt=0;   // current news item
            var curr = "";
            var i=-1;   // current letter being typed

            <?
                $i 
    0;
                while(
    $row mysql_fetch_object($ergebnis))
                {
                    
    $wer $row->username;
                    
    $text2 $row->message;
                    
                    echo 
    'newslist['.$i.']=new Array("<b>'.$wer.'</b>:'.$text2.'","nickpage.php?nick='.$wer.'");';
                    
                    
    $i++;
                }
            
    ?>

            function newsticker()
            ......................................................
            {
    Was jedoch das mit dem ORDER BY im Query soll, blick ich auch noch nicht so ganz.
    Geändert von fanste (12.09.07 um 13:10 Uhr)
     
    Gruß fanste

    Benutze bitte immer die passende Highlight-Tags.(z.B: für PHP [php] [/php] Allgemein: [highlight=SCRIPTSPRACHE]Code[/highlight] )

    Problem gelöst? Dann markiere das Thema bitte als erledigt!
    Beachte bitte die Netiquette. Insbesondere Punkt 15.

  4. #4
    maarian maarian ist offline Mitglied Gold
    Registriert seit
    Dec 2006
    Beiträge
    152
    Ja Sorry das ORDER gehörte da nciht rein habe das gerade erst gemerkt..


    Hier der Aktuelle Code jetzt wird aber nichts mehr asugegeben

    PHP-Code:
    <?php

    include"include/connect.data.php";
    include
    "include/settings.php";

        
    $abfrage"SELECT * FROM shoutout  LIMIT 8";
        
    $ergebnis mysql_query($abfrage);
    ?>
    <body onLoad="newsticker()">
        <script language="JavaScript">
            <!-- Begin
            // news ticker function
            var newslist=new Array();
            var cnt=0;   // current news item
            var curr = "";
            var i=-1;   // current letter being typed

            <?
                $i 
    0;
                while(
    $row mysql_fetch_object($ergebnis))
                {
                    
    $wer $row->username;
                    
    $text2 $row->message;
                    
                    echo 
    'newslist['.$i.']=new Array("<b>'.$wer.'</b>:'.$text2.'","nickpage.php?nick=<?php echo $wer;?>")';
                    
                    
    $i++;
                }
            
    ?>
    function newsticker()
    {
    var mtxtvar=document.getElementById("mtxt"); 

        // next character of current item

        if (i < newslist[cnt][0].length - 1)

        {
            i++;
            temp1 = newslist[cnt][0];
            temp1 = temp1.split('');
            curr = curr+temp1[i];
            temp2 = newslist[cnt][1];
            mtxtvar.innerHTML = "<small><a style='text-decoration: none' target='_top' href='"+temp2+"'><font face='verdana' size='1' color='#FFFFFF'>"+curr+"</small></font></a>";
            setTimeout('newsticker()',20)
            return;

        }

        // new item

        i = -1; curr = "";

        if (cnt<newslist.length-1)
        cnt++;

        else
        cnt=0;

        setTimeout('newsticker()',5000)
    }
    //  End -->
    </script>
     

  5. #5
    Admi Admi ist offline Mitglied Brokat
    Registriert seit
    Jan 2005
    Beiträge
    330
    PHP innerhalb von JS macht auch wenig Sinn. Ohne das ich mir jetzt den ganzen Code angesehen hätte.

    PHP-Code:
    <html>
    <head>
        <script language="JavaScript"> 
            <!-- Begin 
            // news ticker function 
            var newslist=new Array(); 
            var cnt=0;   // current news item 
            var curr = ""; 
            var i=-1;   // current letter being typed 

    function newsticker() 

    var mtxtvar=document.getElementById("mtxt");  

        // next character of current item 

        if (i < newslist[cnt][0].length - 1) 

        { 
            i++; 
            temp1 = newslist[cnt][0]; 
            temp1 = temp1.split(''); 
            curr = curr+temp1[i]; 
            temp2 = newslist[cnt][1]; 
            mtxtvar.innerHTML = "<small><a style='text-decoration: none' target='_top' href='"+temp2+"'><font face='verdana' size='1' color='#FFFFFF'>"+curr+"</small></font></a>"; 
            setTimeout('newsticker()',20) 
            return; 

        } 

        // new item 

        i = -1; curr = ""; 

        if (cnt<newslist.length-1) 
        cnt++; 

        else 
        cnt=0; 

        setTimeout('newsticker()',5000) 

    //  End --> 
    </script>
    </head> 
    <body onLoad="newsticker()">
    <?php 

    include("include/connect.data.php"); 
    include(
    "include/settings.php"); 

        
    $abfrage"SELECT * FROM shoutout LIMIT 0,8"
        
    $ergebnis mysql_query($abfrage); 

                
    $i 0
                while(
    $row mysql_fetch_object($ergebnis)) 
                { 
                    
    $wer $row->username
                    
    $text2 $row->message
                     
                    echo 
    'newslist['.$i.']=new Array("<b>'.$wer.'</b>:'.$text2.'","nickpage.php?nick=<?php echo $wer;?>")'
                     
                    
    $i++; 
                } 
    ?>
    </body>
    </html>
     

  6. #6
    maarian maarian ist offline Mitglied Gold
    Registriert seit
    Dec 2006
    Beiträge
    152
    Der will einfach nichts ausgeben .

    Im Quelltext steht es aber

    HTML-Code:
      <html>
    <head>
    
        <script language="JavaScript"> 
            <!-- Begin 
            // news ticker function 
            var newslist=new Array(); 
            var cnt=0;   // current news item 
            var curr = ""; 
            var i=-1;   // current letter being typed 
    
     newslist[0]=new Array("<b>Marian</b>:Hallo das ist ein Test tesssssssssssssssssssssssssssssssssssssssst","nickpage.php?nick=Marian") newslist[1]=new Array("<b>Marian</b>:tteeesssssssss","nickpage.php?nick=Marian") newslist[2]=new Array("<b>Dark-Bullet</b>:das si kein test.....obwohl eigendlich ja  schon nen bissl.....:D","nickpage.php?nick=Dark-Bullet") newslist[3]=new Array("<b>Dark-Bullet</b>:Flirt-Area!!geht schon....;D","nickpage.php?nick=Dark-Bullet") newslist[4]=new Array("<b>Marian</b>:hehe","nickpage.php?nick=Marian") newslist[5]=new Array("<b>oWnZz</b>:Moin leutz.. hoffe mal alles bestens bei euch xD was geht so ?! Flirt-Area ist geil ^^","nickpage.php?nick=oWnZz") newslist[6]=new Array("<b>oWnZz</b>:Hallo Leutz , was geht bei euch denn so ?! Mir is voll langweilig !","nickpage.php?nick=oWnZz") newslist[7]=new Array("<b>GaNjA-w3eD</b>:+*KIZ*+tHa BeSt","nickpage.php?nick=GaNjA-w3eD")
    function newsticker() 
    { 
    var mtxtvar=document.getElementById("mtxt");  
    
        // next character of current item 
    
        if (i < newslist[cnt][0].length - 1) 
    
        { 
            i++; 
            temp1 = newslist[cnt][0]; 
            temp1 = temp1.split(''); 
            curr = curr+temp1[i]; 
            temp2 = newslist[cnt][1]; 
            mtxtvar.innerHTML = "<small><a style='text-decoration: none' target='_top' href='"+temp2+"'><font face='verdana' size='1' color='#FFFFFF'>"+curr+"</small></font></a>"; 
            setTimeout('newsticker()',20) 
            return; 
    
        } 
    
        // new item 
    
        i = -1; curr = ""; 
    
        if (cnt<newslist.length-1) 
        cnt++; 
    
        else 
        cnt=0; 
    
        setTimeout('newsticker()',5000) 
    } 
    //  End --> 
    </script>
    </head> 
    <body onLoad="newsticker()">
    
    <center><span id="mtxt" style="text-decoration: none"></span></center>
    </body>
    </html>
     

  7. #7
    Admi Admi ist offline Mitglied Brokat
    Registriert seit
    Jan 2005
    Beiträge
    330
    Ersetz mal

    Code :
    1
    
    <script language="JavaScript">

    mit:

    Code :
    1
    
    <script type="text/javascript">

    Falls JS- "onload" case sensitive sein müsste, müsstest du es lt. Referenz so schreiben:

    Code :
    1
    
    <body onLoad="newsticker()">

    Ob der JS-Code sonst korrekt ist, müsste jemand anderes beurteilen. Dafür kenne ich mich zu wenig mit JS aus.
    Geändert von Admi (12.09.07 um 09:08 Uhr)
     

  8. #8
    Registriert seit
    Mar 2005
    Ort
    Bühl/Baden
    Beiträge
    2.330
    Hatte oben im Code 2 kleine Fehlerchen. hab sie korrigiert. Probier doch nochmal, obs nun klappt.
     
    Gruß fanste

    Benutze bitte immer die passende Highlight-Tags.(z.B: für PHP [php] [/php] Allgemein: [highlight=SCRIPTSPRACHE]Code[/highlight] )

    Problem gelöst? Dann markiere das Thema bitte als erledigt!
    Beachte bitte die Netiquette. Insbesondere Punkt 15.

  9. #9
    maarian maarian ist offline Mitglied Gold
    Registriert seit
    Dec 2006
    Beiträge
    152
    Also er gibt immer noch nichts aus kann es sein das es daran liegt das die Shouts alle in einer Reihe sind und nicht untereinander?

    weil im moment ist es durchgehend newlist[0]..........................;newslist[1] usw
     

  10. #10
    Registriert seit
    Mar 2005
    Ort
    Bühl/Baden
    Beiträge
    2.330
    Jetzt muss man aber schon sagen, dass wie da n bissele blind sind. Ein bisschen arg blind...

    Weise Schrift auf weisem Grund tut sich nicht gut Ändere mal die Schriftfarbe, (die du im JS-Code auf weis hast) oder die Hintergrundfarbe des SPAN-Tags.
     
    Gruß fanste

    Benutze bitte immer die passende Highlight-Tags.(z.B: für PHP [php] [/php] Allgemein: [highlight=SCRIPTSPRACHE]Code[/highlight] )

    Problem gelöst? Dann markiere das Thema bitte als erledigt!
    Beachte bitte die Netiquette. Insbesondere Punkt 15.

  11. #11
    maarian maarian ist offline Mitglied Gold
    Registriert seit
    Dec 2006
    Beiträge
    152
    die Hintergrundfarbe ist schwarz. Trotzdem nichts zusehen
     

  12. #12
    Registriert seit
    Mar 2005
    Ort
    Bühl/Baden
    Beiträge
    2.330
    Ich weiß ja nicht, was du geändert hast, aber bei mir gehts

    HTML-Code:
    <html>
    <head>
    
        <script language="JavaScript">
            <!-- Begin
            // news ticker function
            var newslist=new Array();
            var cnt=0;   // current news item
            var curr = "";
            var i=-1;   // current letter being typed
    
     newslist[0]=new Array("<b>Marian</b>:Hallo das ist ein Test tesssssssssssssssssssssssssssssssssssssssst","nickpage.php?nick=Marian");
     newslist[1]=new Array("<b>Marian</b>:tteeesssssssss","nickpage.php?nick=Marian");
     newslist[2]=new Array("<b>Dark-Bullet</b>:das si kein test.....obwohl eigendlich ja  schon nen bissl.....:D","nickpage.php?nick=Dark-Bullet");
     newslist[3]=new Array("<b>Dark-Bullet</b>:Flirt-Area!!geht schon....;D","nickpage.php?nick=Dark-Bullet");
     newslist[4]=new Array("<b>Marian</b>:hehe","nickpage.php?nick=Marian");
     newslist[5]=new Array("<b>oWnZz</b>:Moin leutz.. hoffe mal alles bestens bei euch xD was geht so ?! Flirt-Area ist geil ^^","nickpage.php?nick=oWnZz");
     newslist[6]=new Array("<b>oWnZz</b>:Hallo Leutz , was geht bei euch denn so ?! Mir is voll langweilig !","nickpage.php?nick=oWnZz");
     newslist[7]=new Array("<b>GaNjA-w3eD</b>:+*KIZ*+tHa BeSt","nickpage.php?nick=GaNjA-w3eD");
    function newsticker()
    {
    var mtxtvar=document.getElementById("mtxt");
    
        // next character of current item
    
        if (i < newslist[cnt][0].length - 1)
    
        {
            i++;
            temp1 = newslist[cnt][0];
            temp1 = temp1.split('');
            curr = curr+temp1[i];
            temp2 = newslist[cnt][1];
            mtxtvar.innerHTML = "<small><a style='text-decoration: none' target='_top' href='"+temp2+"'><font face='verdana' size='1' color='#ffffff'>"+curr+"</small></font></a>";
            setTimeout('newsticker()',20)
            return;
    
        }
    
        // new item
    
        i = -1; curr = "";
    
        if (cnt<newslist.length-1)
        cnt++;
    
        else
        cnt=0;
    
        setTimeout('newsticker()',5000)
    }
    //  End -->
    </script>
    </head>
    <body onLoad="newsticker()">
    
    <center><span id="mtxt" style="text-decoration: none;background: #000"></span></center>
    </body>
    </html>
     
    Gruß fanste

    Benutze bitte immer die passende Highlight-Tags.(z.B: für PHP [php] [/php] Allgemein: [highlight=SCRIPTSPRACHE]Code[/highlight] )

    Problem gelöst? Dann markiere das Thema bitte als erledigt!
    Beachte bitte die Netiquette. Insbesondere Punkt 15.

  13. #13
    maarian maarian ist offline Mitglied Gold
    Registriert seit
    Dec 2006
    Beiträge
    152
    hä wo haste den Code jetzt her?

    welcher Code ist denn jetzt der,der das so ausgibt wie bei dir Fanste
     

  14. #14
    Registriert seit
    Mar 2005
    Ort
    Bühl/Baden
    Beiträge
    2.330
    Das ist der, den ich oben gepostet hatte (Ich hab die Arrays nur von Hand so angeordnet, damit ich sehen kann, ob sich da noch ein Fehler versteckt). Ich hatte ja geschrieben, dass ich in diesem 2 Fehlerchen beseitigt hatte.

    Die Farben musst du dort noch anpassen, dass hab ich da noch nicht drin.
     
    Gruß fanste

    Benutze bitte immer die passende Highlight-Tags.(z.B: für PHP [php] [/php] Allgemein: [highlight=SCRIPTSPRACHE]Code[/highlight] )

    Problem gelöst? Dann markiere das Thema bitte als erledigt!
    Beachte bitte die Netiquette. Insbesondere Punkt 15.

  15. #15
    maarian maarian ist offline Mitglied Gold
    Registriert seit
    Dec 2006
    Beiträge
    152
    aber irgendwie wird nichts angezeigt

    im Quelltext stehen die ( newslist[0]=new Array( ) ja hintereinander kann es sein das nichts angezeigt wird weil die nicht untereinander angezeigt werden das das Script das dann nicht verarbeiten kann
     

Ähnliche Themen

  1. Shoutbox
    Von sbkbros im Forum PHP
    Antworten: 3
    Letzter Beitrag: 06.03.05, 17:58
  2. Shoutbox
    Von Nino im Forum PHP
    Antworten: 2
    Letzter Beitrag: 22.08.02, 05:15
  3. Ich will ne ShoutBOX!
    Von Comander_Keen im Forum PHP
    Antworten: 6
    Letzter Beitrag: 01.02.02, 19:47
  4. Shoutbox und Tut...
    Von bloody im Forum PHP
    Antworten: 7
    Letzter Beitrag: 04.01.02, 21:05