ilch Forum » Allgemein » HTML, PHP, SQL,... » Prozentbalken in Votebox

Geschlossen
  1. #1
    User Pic
    EnTrA1L Mitglied
    Registriert seit
    10.10.2006
    Beiträge
    8
    Beitragswertungen
    0 Beitragspunkte
    Hallo!

    Da mich der Standart der Votebox nicht anspricht wollte ich diese ein wenig erweitern. Nun habe ich es bereits mit Hilfe anderer in einem seperaten Thread und ein wenig probieren gepackt, die %-Zahl anzuzeigen. Jetzt meine Frage:
    Wie mache ich es, dass die Prozentbalken unter den antworten IN der Vote-Box erscheinen, nachdem man gevotet hat?
    Halt eine optische Verbesserung. Ich hoffe da kann mir jemand helfen und sogar den Code schnell posten da ich leider von PHP keine Ahnung habe.

    Danke im Vorraus

    mfg EnTrA1L


    verwendete ilchClan Version: 1.1

    betroffene Homepage: externer Link
    Nichts ist, wie es scheint.
    Kingdom Hearts 2-Online!
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Schau mal in der vote.php im contents Ordner, da werden ja Balken erstellt.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    EnTrA1L Mitglied
    Registriert seit
    10.10.2006
    Beiträge
    8
    Beitragswertungen
    0 Beitragspunkte
    Ja das habe ich getan und mit trial & error rumprobiert. Jetz habe ich es soweit:

    Die Prozentbalken werden angezeigt nur die richtige Länge nicht.
    Screen:
    gesperrtes Bild

    Ich habe folgenden Code aus der Vote.php des Contents in die Box kopiert:

    $tbweite = $weite + 20;
    						
    				    echo '<td width="50%">';
                /*
                '<table width="'.$tbweite.'" border="0" cellpadding="0" cellspacing="0"></td>';
    						echo '<tr><td width="10" height="10"></td>';
    						echo '<td width="'.$weite.'" background="include/images/vote/voteMitte.jpg" alt=""></td>';
    						echo '<td width="10"><img src="include/images/vote/voteRight.jpg" alt=""></td>';
    						echo '</tr></table>';*/
                echo '<div style="height: 10px; width: ' . $weite .'px; background: #FFFFFF url(include/images/vote/voteMitte.png) repeat-y top left;">'.
                     '</div>';


    Aber weiter weiß ich echt nicht, also kann mir jemand helfen? Was muss ich noch ergänzen, damit die Balken je nach % die richtige Länge haben?
    Vielen Dank!

    mfg EnTrA1L
    Nichts ist, wie es scheint.
    Kingdom Hearts 2-Online!
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Also die Prozentwerte hast du ja schon ausgerechnet, du musst also jetzt nur den ganzzahligen Wert, also keine Kommastellen der variable $weite zuordnen, denn diese wird als Breite benutzt, also $weite = deine angabe; vor dem code, den du geschickt hast.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    EnTrA1L Mitglied
    Registriert seit
    10.10.2006
    Beiträge
    8
    Beitragswertungen
    0 Beitragspunkte
    Cool danke ^^ Hat ja nicht mehr viel gefehlt !

    Habe jetzt nur noch vor den Code wie du bereits sagtest:

    $weite = $prozent;

    davorgeschrieben.

    Jetzt zeigt er die richtige Länge an!

    Nochmals vielen Dank!

    mfg EnTrA1L


    Zuletzt modifiziert von EnTrA1L am 13.02.2007 - 16:00:58
    Nichts ist, wie es scheint.
    Kingdom Hearts 2-Online!
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    SeToY Mitglied
    Registriert seit
    29.06.2006
    Beiträge
    1.928
    Beitragswertungen
    43 Beitragspunkte
    könntest du das Script vll hier reinstellen? Wäre nett lächeln
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    fitzfuchs gelöschter User
    Ja das wäre mal eine Idee :-)
    Ich hätte das auch gerne. Bekomme es aber leider nicht hin.
    Oder eine genauere Anleitung wäre nett.

    In welche Zeile in der Vote.php (BOX) hast du denn nun was genau (wie verändert) eingefügt?

    MfG Fitz
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    samo Mitglied
    Registriert seit
    06.10.2005
    Beiträge
    228
    Beitragswertungen
    0 Beitragspunkte
    Guten Morgen,

    also um die graphische anzeige zu haben, muss ab zeile 57(bei mir) folgendes stehen
     $pollErg = db_query('SELECT antw, res, sort FROM `prefix_poll_res` WHERE poll_id = "'.$fraRow->poll_id.'" ORDER BY sort');
    		while ( $pollRow = db_fetch_object($pollErg) ) {
    		    if ( $imPollArrayDrin ) {
    						echo '<tr><td>'.$pollRow->antw.'</td><td align="right">'.$pollRow->res.'</td></tr>';
    						
    						 $weite = ($pollRow->res / $max) * 200;
    		 		      $prozent = $pollRow->res * 100 / $ges;
    		 		      $prozent = round($prozent,0);
    					  $weite = $prozent; 
    						$tbweite = $weite ;
                            
                        echo '<td width="50%">';
                
                echo '<div style="height: 10px; width: ' . $weite .'px; background: #FFFFFF url(include/images/vote/voteMitte.png) repeat-y top left;">'.
                     '</div>';
    		    } else {
    			      $i++;
                echo '<input type="radio" id="vote'.$i.'" name="radio" value="'.$pollRow->sort.'"><label for="vote'.$i.'"> '.$pollRow->antw.'</label><br>';
    		    }
    		}

    samo
    Ain't no use running, fool! I know where your mama parks your house
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    fitzfuchs gelöschter User
    Also wenn ich das in meine unveränderte Standartdatei ab Zeile 56 einfüge gibt ess totales Chaos und meine Seite ladet nichtmehr :-(
    Noch jemand eine Idee?
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Tim76 Mitglied
    Registriert seit
    20.04.2006
    Beiträge
    72
    Beitragswertungen
    0 Beitragspunkte
    ZitatZitat geschrieben von fitzfuchs

    Also wenn ich das in meine unveränderte Standartdatei ab Zeile 56 einfüge gibt ess totales Chaos und meine Seite ladet nichtmehr :-(
    Noch jemand eine Idee?


    Bei mir funktioniert es so ebenfalls ohne Probleme!
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    ominaei Mitglied
    Registriert seit
    04.03.2007
    Beiträge
    8
    Beitragswertungen
    0 Beitragspunkte
    <?php
    # Copyright by Manuel
    # Support www.ilch.de


    defined ('main') or die ( 'no direct access' );


    //-----------------------------------------------------------|
    // Vote Sperre in Stunden

    $stunden = 24;

    $breite = 50;
    $diftime = time() - (60 * 60 * $stunden);

    if ( has_right(-1) ) {
    $woR = '>= "1"';
    } else {
    $woR = '= "1"';
    }

    $fraErg = db_query('SELECT * FROM `prefix_poll` WHERE recht '.$woR.' ORDER BY poll_id DESC LIMIT 1');



    if ( db_num_rows($fraErg) > 0) {

    $fraRow = db_fetch_object($fraErg);
    if ( $fraRow->stat == 1 ) {

    $maxRow = db_fetch_object(db_query('SELECT MAX(res) as res FROM `prefix_poll_res` WHERE poll_id = "'.$fraRow->poll_id.'"'));
    $gesErg = db_query('SELECT SUM(res) as res FROM `prefix_poll_res` WHERE poll_id = "'.$fraRow->poll_id.'"');
    $gesRow = db_fetch_object($gesErg);


    $max = $maxRow->res;
    $ges = $gesRow->res;
    $textAr = explode('#',$fraRow->text);

    if ($fraRow->recht == 2) {
    $inTextAr = $_SESSION['authid'];
    } elseif ($fraRow->recht == 1) {
    $inTextAr = $_SERVER['REMOTE_ADDR'];
    }

    echo '<b>'.$fraRow->frage.'</b>';
    if ( in_array ( $inTextAr , $textAr ) OR $fraRow->stat == 0) {
    echo '<table width="100%" cellpadding="0">';
    $imPollArrayDrin = true;
    $pollErg = db_query('SELECT antw, res, sort FROM `prefix_poll_res` WHERE poll_id = "'.$fraRow->poll_id.'" ORDER BY sort');
    while ( $pollRow = db_fetch_object($pollErg) ) {
    if ( $imPollArrayDrin ) {
    echo '<tr><td>'.$pollRow->antw.'</td><td align="right">'.$pollRow->res.'</td></tr>';

    $weite = ($pollRow->res / $max) * 200;
    $prozent = $pollRow->res * 100 / $ges;
    $prozent = round($prozent,0);
    $weite = $prozent;
    $tbweite = $weite ;

    echo '<td width="50%">';

    echo '<div style="height: 10px; width: ' . $weite .'px; background: #FFFFFF url(include/images/vote/voteMitte.png) repeat-y top left;">'.
    '</div>';
    } else {
    $i++;
    echo '<input type="radio" id="vote'.$i.'" name="radio" value="'.$pollRow->sort.'"><label for="vote'.$i.'"> '.$pollRow->antw.'</label><br>';
    }
    }} else {
    echo '<form action="index.php?vote-W'.$fraRow->poll_id.'" method="POST">';
    $imPollArrayDrin = false;
    }
    $i = 0;
    $pollErg = db_query('SELECT antw, res, sort FROM `prefix_poll_res` WHERE poll_id = "'.$fraRow->poll_id.'" ORDER BY sort');
    while ( $pollRow = db_fetch_object($pollErg) ) {
    if ( $imPollArrayDrin ) {
    echo '<tr><td>'.$pollRow->antw.'</td><td align="right">'.$pollRow->res.'</td></tr>';
    } else {
    $i++;
    echo '<input type="radio" id="vote'.$i.'" name="radio" value="'.$pollRow->sort.'"><label for="vote'.$i.'"> '.$pollRow->antw.'</label><br>';
    }
    }
    if ( $imPollArrayDrin ) {
    echo '<tr><td colspan="2" align="right">'.$lang['whole'].': &nbsp; '.$ges.'</td></tr></table>';
    } else {
    echo '<p align="center"><input type="submit" value="'.$lang['formsub'].'"></p></form>';
    }
    } else {
    echo $lang['nowvoteavailable'];
    }
    } else {
    echo $lang['nowvoteavailable'];
    }

    ?>

    bei mir sieht es dann so aus
    aber dann ist es doppelt
    seht selber daswurst.da.ohost.de/ilch/index.php?news
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    ominaei Mitglied
    Registriert seit
    04.03.2007
    Beiträge
    8
    Beitragswertungen
    0 Beitragspunkte
    hallo?
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    Ithron Hall Of Fame
    Registriert seit
    21.01.2006
    Beiträge
    2.659
    Beitragswertungen
    24 Beitragspunkte
    hi..



    hier sind auch nicht alle 24/7h online...
    keiner macht das hier hauptberuflich.. wie wärs mal mit warten?!

    es kann bis zu 4 tage dauern bis man ne antwort bekommt.. meistens geht es aber schneller und wenn du dann noch glück hast, haste evt. noch am gleichen tag die antwort...
    ZitatZitat geschrieben von loW

    Ja ich habs gesehen und wenn ichs kostenlos bekomm dann zahl ich doch nix dafür oder?
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    ominaei Mitglied
    Registriert seit
    04.03.2007
    Beiträge
    8
    Beitragswertungen
    0 Beitragspunkte
    ok
    weißt du vll an was es liegt das die votes doppelt stehen also einmal mit prozentbalken und einmal ohne?
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    FKT23016 Mitglied
    Registriert seit
    09.10.2006
    Beiträge
    4
    Beitragswertungen
    0 Beitragspunkte
    Wenn ich Antwort: 01. "Wir müssen erstmal putzen, bevor wir was benutzen." schreiben , dann immer Fehler! Bedeutet SCHULD: ,, ,. oder "
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten