userid aber nur einmal

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    Original geschrieben von kova
    hat niemand ne idee wie mann des jetzt machen kann
    Vielleicht array mit IDs füllen, dann entfernst du doppelte Einträge und läßt nach IDs die Bilder ausgeben.
    Resultat= 1 Bild Pro user

    $user_array = array();
    while ($bla=mysql_fetch_array($blabla))
    {
    array_unshift($user_array,$bla['id']);

    }
    $user_array = array_unique($user_array);
    $anzahl=count($user_array);


    So in der Art. Musst mal probieren. Wenn du dann ein Array hast, dann kannst du in der For schleife die Bilder ausgeben

    for ($zaehler=0; $zaehler<$anzahl; $zaehler++)
    {
    $user_id_aus_arr=current($user_array);
    SQL Sel Abfrage

    next($user_array);
    }
    Zuletzt geändert von archie; 19.02.2006, 14:07.

    Kommentar


    • #17
      Original geschrieben von archie
      Vielleicht array mit IDs fühlen
      OffTopic:
      Sag uns Bescheid, ob's sich gut anfühlt ...
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #18
        OffTopic:
        Sag uns Bescheid, ob's sich gut anfühlt ...
        ich versteh dich nicht was soll das jetzt heißen??

        Kommentar


        • #19
          Original geschrieben von kova
          ich versteh dich nicht was soll das jetzt heißen??
          Der will mich fertig machen
          Ja ich weiß: füllen ;> Naja, ich glaube sowas blödes passiert Jedem

          Kommentar


          • #20
            stimmts wenn ich so ein baue???

            PHP-Code:
            $user_array = array();
            # muss hier keine sel abfrage??
            while ($row=mysql_fetch_array($result2))
            {
            array_unshift($user_array,$row['id']);

            }
            $user_array array_unique($user_array);
            $anzahl=count($user_array);


            for (
            $zaehler=0$zaehler<$anzahl$zaehler++) 
            {
            $user_id_aus_arr=current($user_array);
            $query2="SELECT DISTINCT P.userid, P.url, P.id,
            P.open, P.facetoface_pro, P.facetoface_contra 
            FROM 
            $sqltable_pics P left outer join $usertable 
            U on (P.userid = U.id) WHERE(U.code='1') and 
            (P.open='1') and U.geschlecht='m' ORDER BY round
            ((100*P.facetoface_pro)/(P.facetoface_contra+
            P.facetoface_pro),2) DESC LIMIT 0,10"
            ;
            $result2 mysql_query($query2) or die(mysql_error());

            next($user_array); 

            Kommentar


            • #21
              Nein das stimmt so nicht ganz. Zuerst musst du die IDs der User aus der Bildertabelle einlesen. Da kannst du z.B. LIMIT 10 Setzten und nach Bewertungen sortieren lassen. (# muss hier keine sel abfrage??)

              In der Forschleife gibst du dann die Bilder und die Userdaten aus.

              Kommentar


              • #22
                des kann man noch einfacher machen also nur mit sql.

                hab schon raus mit "GROUP BY" bloss es werden nicht die höchstbewertenen bilder angezeigt sonder das erst hochgeladene bilder des jeweiligen users. Ich brauche das es noch dem rund(...) ausliest.

                was muss ich den da jetzt um stellen oder etwas verbessern??


                PHP-Code:
                SELECT P.useridP.urlP.facetoface_proP.facetoface_contra
                FROM $sqltable_pics P left outer join $usertable
                U on 
                (P.userid U.idWHERE(U.code='1') and (P.open='1') and U.geschlecht='m' 
                GROUP BY U.id ORDER BY
                round
                ((100*P.facetoface_pro)/(P.facetoface_contra+
                P.facetoface_pro),2DESC LIMIT 0,10 
                PS: Sorry das ist noch ein thema aufgemacht habe hab vergessen das ich schon eins mit dem thema aufhabe

                Kommentar

                Lädt...
                X