Martin L.: Bild in tabelle ändern

Moin Moin

ich habe einen userzähler in php programmiert und eine homepage schön gesliced mit photoshop also schön viele tabellen zellen.

jetzt habe ich da stehen :

User: 0000
jede 0 ist ein geslicestes bild. wie kann ich jetzt mit php je nach dem wie der userstand ist, das bild in der tabelle ändern?

ich hab schon mal versucht einfach im php code mit
<html><img src.....></html>

das bild einzufügen aber irgendwie steht dann unter dem bild auch direkt mein ganzer folgender php code als text da....

und im internet werden bilder immer nur durch php verändert wie man die überhaupt mit php einfügen kann hab ich nicht gefunden ich hoffe mal das geht....

grazie in anticipo

  1. Hallo!

    ich habe einen userzähler in php programmiert und eine homepage schön gesliced mit photoshop also schön viele tabellen zellen.

    Das "schön" streichst du bitte wieder. Weil es ist nicht schön sondern ziemlich blöd ist, wenn man Tabellen für das Layout benützt. Schau dir doch bei Zeiten mal CSS-basierte Layouts an.

    also blöd viele tabellen zellen.

    So wär's besser ;-) Aber jetzt im ernst:

    ich hab schon mal versucht einfach im php code mit
    <html><img src.....></html>

    <html>...<img src="<?php echo "1" ?>.jpg">...</html>

    Vielleicht machst du es mit einer if-else-Bedingung oder wie auch immer. Aber wichtig ist, dass dann per echo der Text ausgegeben wird.

    das bild einzufügen aber irgendwie steht dann unter dem bild auch direkt mein ganzer folgender php code als text da....

    Dann hast du deinen PHP-Code nicht als solchen gekennzeichnet. Zeige uns mal deine Versuche. Wir können dir dann sicher sagen, was falsch ist.

    ciao, ww

    --
    Schäuble:
      "Wir können alles. Außer Rechtsstaat."
    1. Ok schön blöd viele Tabellenzellen ;-)

      ich glaub aber ich werds trotzdem so lassen für den anfang reichts und ich brauch mich nicht mit floatenden oder ähnlichen problemen oder min width im IE oder sonstigen Problemen zu befassen^^

      mein Code:

      <td rowspan="2">
      <img src="Bilder/tausender_null.gif" width="13" height="23" alt=""></td>
      <td rowspan="2">
      <img src="Bilder/hunderter_null.gif" width="13" height="23" alt=""></td>
      <td rowspan="2">
      <img src="Bilder/zehner_null.gif" width="13" height="23" alt=""></td>
      <td rowspan="2">
      <img src="Bilder/einer_null.gif" width="13" height="23" alt=""></td>

      so das ist ist der wichtige tabellen abschnitt und jetzt habe ich eine txt datei, in der der aktuelle stand der benutzer steht zum beispiel 0534

      datei öffnen und die daten auslesen ist gar kein problem.
      jetzt würde ich dann mit if oder switch gerne im fall das der tausender der zahl eine
      0
      1
      2
      3
      .
      .
      ist, gerne das bild:

      tausender_null.gif
      tausender_eins.gif
      tausender_zwei.gif
      .
      .
      .

      einsetzen.

      wie mache ich das jetzt, dass per php das bild als inhalt der tabelle nzeile angeben kann.... ich hoffe das ist verständlich

      danke sehr

      1. Hallo!

        ich glaub aber ich werds trotzdem so lassen für den anfang reichts und ich brauch mich nicht mit floatenden oder ähnlichen problemen oder min width im IE oder sonstigen Problemen zu befassen^^

        Ich habe auch mit Tabellen angefangen :) Hauptsache ist, dass du weißt dass es falsch und umständlich ist. Dann kommst du irgendwann warscheinlich von selber zu CSS :-)

          
        // Die Zahlen liest du aus und speicherst sie in einer Variablen.  
        // Warscheinlich als String, oder?  
        $tausender = "0";  
        $hunderter = "5";  
        $zehner = "3";  
        $einer = "4";  
        // Bild ausgeben:  
        echo "<img src=\"".$tausender."_tausender.jpg\" width=\"13\" height=\"23\">";  
        
        

        Das wars schon. Das machst du jetzt mit jedem Bild.

        ciao, ww

        --
        Schäuble:
          "Wir können alles. Außer Rechtsstaat."
        1. ok danke sehr

          ich dachte bisher immer echo währe nur für text aber stimmt man gibt ja auch das bild einfach aus^^

          und ich hab schon mal mit css angefangen aber wie gesagt es hat vorteile und nachteile und für ne einfache homepage, die sowieso ne statische größe hat und nicht sehr komplex ist, währe es nur der schönheit im quellcode zuträglich wenn ichs machen würde und da sich die seite nur aus photoshop bildern zusammensetzt, lasse ich Photoshop mal machen und berühr den Code lieber nicht mehr^^

          1. naja irgendwie funtkioniert es nicht :-(

            ich bekomme keinen Fehler aber es stehen nur die nullen da...

            hier mal der code:

            <?php
              $count = fopen("user/count.txt","r");
              $gesamtstand = (int)fgets($count,4096);
              $tausender = $gesamtstand{0};
              fclose($count);

            if(tausender == 0){echo "<img src='Bilder/zahlen/user_0.gif' width='13' height='23'>";}
              if(tausender == 1){echo "<img src='Bilder/zahlen/user_1.gif' width='13' height='23'>";}
              if(tausender == 2){echo "<img src='Bilder/zahlen/user_2.gif' width='13' height='23'>";}
              if(tausender == 3){echo "<img src='Bilder/zahlen/user_3.gif' width='13' height='23'>";}
              if(tausender == 4){echo "<img src='Bilder/zahlen/user_4.gif' width='13' height='23'>";}
              if(tausender == 5){echo "<img src='Bilder/zahlen/user_5.gif' width='13' height='23'>";}
              if(tausender == 6){echo "<img src='Bilder/zahlen/user_6.gif' width='13' height='23'>";}
              if(tausender == 7){echo "<img src='Bilder/zahlen/user_7.gif' width='13' height='23'>";}
              if(tausender == 8){echo "<img src='Bilder/zahlen/user_8.gif' width='13' height='23'>";}
              if(tausender == 9){echo "<img src='Bilder/zahlen/user_9.gif' width='13' height='23'>";}

            ?>

            so das ist der code für die tausender, da stimmt die 0 sogar aber bei den anderen stehen auch nur nullen da..... warum? der Code ist beinahe identisch nur halt die variable ist anders statt tausender dann einer bzw zehner und ne andere stelle des strings wird genommen....

            ich hoffe es ist ein einfacher (dummer) fehler^^

            1. Hi,

              naja irgendwie funtkioniert es nicht :-(

              ich bekomme keinen Fehler aber es stehen nur die nullen da...

              in PHP bekommst du mehr Fehlermeldungen wenn du
              error_reporting(E_ALL) verwendest. Was die ganzen anderen Parameter für error_reporting() bedeuten weiß ich leider nicht genau, aber das weiß sicher jemand anderes hier im Forum.

                
                
              
              >   if(tausender == 0){echo "<img src='Bilder/zahlen/user_0.gif' width='13' height='23'>";}  
              >   if(tausender == 1){echo "<img src='Bilder/zahlen/user_1.gif' width='13' height='23'>";}  
              >   if(tausender == 2){echo "<img src='Bilder/zahlen/user_2.gif' width='13' height='23'>";}  
              >   if(tausender == 3){echo "<img src='Bilder/zahlen/user_3.gif' width='13' height='23'>";}  
              >   if(tausender == 4){echo "<img src='Bilder/zahlen/user_4.gif' width='13' height='23'>";}  
              >   if(tausender == 5){echo "<img src='Bilder/zahlen/user_5.gif' width='13' height='23'>";}  
              >   if(tausender == 6){echo "<img src='Bilder/zahlen/user_6.gif' width='13' height='23'>";}  
              >   if(tausender == 7){echo "<img src='Bilder/zahlen/user_7.gif' width='13' height='23'>";}  
              >   if(tausender == 8){echo "<img src='Bilder/zahlen/user_8.gif' width='13' height='23'>";}  
              >   if(tausender == 9){echo "<img src='Bilder/zahlen/user_9.gif' width='13' height='23'>";}  
                
              Abgesehen, dass hier überall das $ vor tausender fehlt könntest du das ganze auch auf eine Zeile zusammenfassen:  
              echo "<img src='Bilder/zahlen/user_$tausender.gif' width='13' height='23'>";  
                
              
              

              ich hoffe es ist ein einfacher (dummer) fehler^^

              Glück gehabt ;)

              mfG,
              steckl

              1. aha jetzt weiß ich auch was

                echo "<img src="".$tausender."_tausender.jpg" width="13" height="23">";

                das bedeuten sollte, aber wie muss es denn jetzt?

                echo "<img src='Bilder/zahlen/user_$tausender.gif' width='13' height='23'>";

                oder

                echo "<img src="".$tausender."_tausender.jpg" width="13" height="23">";

                so?

                aber irgendwie geht keine Methode..... aber ich probier noch mal ein wenig rum vllt liegts ja wieder an nem $ zeichen seit ich in der schule fast nur noch java mache kann ich mich nicht mehr an die $ Zeichen gewöhnene ^^

                1. ach shit

                  ich glaub ich habs ich probiers gleich mal aus aber ich glaub, dass war ein typischer copy paste fehler einfach nen falschen variablen namen übernommen......... der kennt nämlich die variable

                  $tausender gar nicht...^^

                  naja ich hoffe das war der fehler danke sehr für eure hilfe

  2. Hallo,

    wenn du ein paar Bilder nebeneinander platzieren willst, brauchst du weder float noch eine Tabelle. Einzelne Buchstaben von Wörtern setzt du doch auch nicht in eine Tabelle sondern tippst sie einfach nacheinander.

    Dann sind Textdateien für Counter ungeeignet. Sobald 2 User deine Seite gleichzeitig betreten wird die Counter-Datei nämlich geleert.

    Als nächstes erstellst du Dateien mit den Namen und Inhalten 0-9.
    Idealerweise tatsächlich 0.jpg, 1.jpg, 2.jpg usw. Der Typ ist erstmal egal. Also geht auch GIF o. PNG.

    Jetzt liest du den Counterstand aus. Z.B. 0534
    $stand = "0534";
    Dann gibst du den Counter aus.

    echo '<img src="'.substr($stand,0,1).'.jpg"><img src="'.substr($stand,1,1).'.jpg"><img src="'.substr($stand,2,1).'.jpg"><img src="'.substr($stand,4,1).'.jpg">';

    Fertig. Mehr steckt nicht dahinter.

    Grüße, Matze