onMouseOver geht nicht richtig

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

  • onMouseOver geht nicht richtig

    Hallo zusammen,
    ich habe eine Intranetseite mit PHP programmiert, die auf eine MySql-Datenbank zugreift.
    Sobald ich mit dem mysql_fetch_row mir das Ergebnis in einer Tabelle auflisten lasse, möchte ich, wenn ich über einen Eintrag gehe, mir das entsprechendes Bild angezeigen lassen,dass sich im Pfad x befindet.

    Soweit funktioniert auch alles, aber leider wird immer nur das Bild zum erste Ergebnis angezeigt bzw. es wird immer nur der Pfad vom ersten Ergebnis in meine Funktion übergeben, egal über welche Zeile sich der Mauszeiger befindet.

    Der PHP-Teil ist folgendermaßen:

    PHP-Code:
     
    $result 
    mysql_query($querytext);
     
     
    while(list(
    $nachname,$vorname,$AMT,$Durchwahl,$Fax,$bild) = mysql_fetch_row ($result)){     
     
    //$bild ist der Pfad und dieser wird auf jedenfall in jeder Zeile richtig aufgelistet
     
         
    echo ("<tr>\n");
         echo (
    "<td width='140px' nowrap bgcolor='$color' id='bild' name='bild' value='$bild' onMouseOver='bildaendern();'> $nachname $vorname</td>\n");
         echo (
    "<td width='25px' nowrap bgcolor='$color'>$AMT</td>\n");
         echo (
    "<td width='auto' nowrap bgcolor='$color'>$Durchwahl</td>\n");
         echo (
    "<td width='20px' nowrap bgcolor='$color'>$Fax</td>\n");
         echo (
    "</tr>");
         } 
    und der entsprechende Javascriptcode ist wie folgt:

    function bildaendern()
    {
    var bildPfad = document.getElementById('bild').value;
    alert(bildPfad); //nur zur Kontrolle
    neuWindow = window.open(bildPfad, "neu", "width=150,height=200");

    Warum gibt er mir immer nur den Pfad zum ersten Eintrag?
    Könnte mir bitte jemand einen Tipp geben?
    Zuletzt geändert von Dario_PHP; 07.06.2010, 18:57.

  • #2
    Hallo,

    PHP-Code hat nichts mit dem Problem zu tun und in diesem Unterforum nichts zu suchen. Der JS-Code gehört auch in Code-Tags.

    Wenn du das behoben hast, bekommst du deine Antwort.

    Gruß,

    Amica
    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
    Super, danke!
    [/COLOR]

    Kommentar


    • #3
      okay, sobald ich herausgefunden hab wie man das hier verschiebt... oder muss ich das löschen und neu machen?

      Kommentar


      • #4
        Ändere den Beitrag und schreib dort genau den Code rein, der im Browser ankommt.
        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
        Super, danke!
        [/COLOR]

        Kommentar


        • #5
          keine Ahnung wie ich das hier lösche...

          Kommentar


          • #6
            Warum machst du ein neues Thema auf? Du sollst doch nur deinen Beitrag hier bearbeiten und dabei die Forenregeln beachten.

            Anderes Thema gelöscht.

            Zitat von Dario_PHP Beitrag anzeigen
            keine Ahnung wie ich das hier lösche...
            Davon habe ich nichts gesagt. Ich rede von bearbeiten/ändern, löschen ist etwas ganz anderes.
            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
            Super, danke!
            [/COLOR]

            Kommentar


            • #7
              Weil du meintest das, dass Thema hier nichts zu suchen hat... mir ist schon klar das, dass kein php thema ist, aber es ist ein javascript problem und ich befinde mich hier im javascript bereich... also kein plan was man von mir will....

              Kommentar


              • #8
                Zitat von Dario_PHP Beitrag anzeigen
                Weil du meintest das, dass Thema hier nichts zu suchen hat
                Nein, das Thema ist richtig hier und ich hab bemängelt, dass bei clientseitigen Problemen der PHP-Code nichts zu suchen hat und du den HTML-Code posten sollst, den der Client (dein Browser) erhält.

                Das sollst du aber nicht neu posten, sondern deinen ersten Beitrag bearbeiten.

                Was daran jetzt so schwer sein soll, verstehe ich leider nicht. Ich hoffe, dass ich mich jetzt verständlicher ausgedrückt habe. Wenn ich Glück habe, liest du es jetzt auch richtig, ohne irgendwas reinzuinterpretieren. Dann könnten wir nämlich mit dem eigentlichen Thema weitermachen.
                [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                Super, danke!
                [/COLOR]

                Kommentar


                • #9
                  Okay... den HTML-Code den der Client bekommt. Welchen genau meinst du jetzt... der Client arbeitet doch mit den HTML-Code den ich hier rein geschrieben hab... bitte etwas genauer...
                  Ich weiß nicht genau was du meinst?

                  Kommentar


                  • #10
                    Zitat von Dario_PHP Beitrag anzeigen
                    Okay... den HTML-Code den der Client bekommt. Welchen genau meinst du jetzt...
                    1. Lade die Seite im Browser.
                    2. Gehe im Menü „Ansicht“ auf „Seitenquelltext anzeigen“ (Firefox) bzw. „Quelle“ (IE).


                    Das ist der Code, den der Client bekommt. PHP läuft dagegen auf dem Server.
                    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                    Super, danke!
                    [/COLOR]

                    Kommentar


                    • #11
                      Zitat von Dario_PHP Beitrag anzeigen
                      PHP-Code:
                      while(list($nachname,$vorname,$AMT,$Durchwahl,$Fax,$bild) = mysql_fetch_row ($result))
                      {     
                        echo (
                      "<td width='140px' nowrap bgcolor='$color' id='bild' ...\n");

                      und der entsprechende Javascriptcode ist wie folgt:

                      function bildaendern()
                      {
                      var bildPfad = document.getElementById('bild').value;
                      alert(bildPfad); //nur zur Kontrolle
                      neuWindow = window.open(bildPfad, "neu", "width=150,height=200");

                      Warum gibt er mir immer nur den Pfad zum ersten Eintrag?
                      Könnte mir bitte jemand einen Tipp geben?
                      Denk doch mal logisch. Eine ID darf pro Seite nur EINMAL(!) verwendet werden. Du dagegen machst das in der Schleife mehrmals. Das kann so nicht funktionieren. Tipp: Schmeiß die ID raus und setz im mouseover z.B. ein

                      PHP-Code:
                      onMouseOver='bildaendern(this.value);' 
                      Und den übergibst du als Paramater an die Funktion.

                      Peter

                      PS: Ist value bei td eigentlich erlaubt?
                      Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                      Meine Seite

                      Kommentar


                      • #12
                        PHP-Code:
                        <scripttype="text/javascript"
                        var 
                        status "True"
                        if ( 
                        status == "True"

                        alert(status); 
                        function 
                        bildaendern() 

                        var 
                        bildPfad document.getElementById('bild').value
                        alert(bildPfad); 
                        neuWindow window.open(bildPfad"neu""width=150,height=200"); 


                        else 

                        alert("fde"); 
                        }
                        </
                        script>
                         
                        </
                        head>
                         
                        <
                        divid="infobzwanzeige"
                         
                        <
                        tablewidth="920px"
                        <
                        thead
                        <
                        tr
                        <
                        thwidth='140px' nowrap >Nachname,<br>Vorname</th>
                        <
                        thwidth='25px' nowrap >Amt</th>
                        <
                        thwidth='auto' nowrap >Durch-<br>wahl</th
                        <
                        thwidth='20px' nowrap >Fax</th>
                        <
                        thwidth='auto' nowrap >Cordless</th>
                        <
                        thwidth='20px' nowrap >Outlook<br>Fax</th>
                        <
                        thwidth='auto' nowrap >Standort</th>
                        <
                        thwidth='auto' nowrap >Abteilung</th>
                        <
                        thwidth='auto' nowrap >Funktion</th
                        </
                        tr>
                        </
                        thead>
                        <
                        tr>
                         <
                        tdwidth='140px' nowrapbgcolor='#fefefe' id='bild' name='bild' value='\\XXXXX\XX\XXX\XX\XXX\XXX.jpg' onMouseOver='bildaendern();'Max Mustermann</td
                         
                        <
                        tdwidth='25px' nowrapbgcolor='#fefefe'>9680</td>
                        <
                        tdwidth='auto' nowrapbgcolor='#fefefe'>1176</td>
                        <
                        tdwidth='20px' nowrapbgcolor='#fefefe'></td>
                        <
                        tdwidth='auto' nowrapbgcolor='#fefefe'></td>
                        <
                        tdwidth='20px' nowrapbgcolor='#fefefe'></td>
                        <
                        tdwidth='auto' nowrapbgcolor='#fefefe'>099</td>
                        <
                        tdwidth='auto' nowrapbgcolor='#fefefe'>BSZ Netzwerk/Telefon</td>
                        <
                        tdwidth='auto' nowrapbgcolor='#fefefe'>Mitarbeiter</td>
                        </
                        tr
                        </
                        table>
                        </
                        div
                        <
                        tablebgcolor="#ffffff" style="border:0px solid #000000;">
                        <
                        td>
                          
                        <
                        FORMACTION='index.php' METHOD='post'
                         
                         <
                        inputtype="submit" name="aktion" value="Neue Suche" class="submit"
                         
                         </
                        FORM
                          
                        </
                        td
                        </
                        table>
                        </
                        div>
                         
                        <
                        divid="fuss"
                        </
                        body>
                        </
                        html
                        Zuletzt geändert von wahsaga; 07.06.2010, 20:14. Grund: Code „entbuntet“ & dafür mit PHP-Tags dargestellt

                        Kommentar


                        • #13
                          Du sollst den Code nicht quietschebunt machen sondern ein nur auf das entsprechende Bild () klicken und den Code darin einfügen.

                          Peter
                          Zuletzt geändert von Kropff; 07.06.2010, 20:49.
                          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                          Meine Seite

                          Kommentar


                          • #14
                            Geändert von wahsaga (07-06-2010 um 20:14 Uhr) Grund: Code „entbuntet“ & dafür mit PHP-Tags dargestellt
                            OffTopic:
                            Und jetzt ist er völlig kaputt

                            @TS:
                            Wie ich schon vermutete, value gibt es bei td nicht. Alternativ kannst du du so vorgehen:
                            HTML-Code:
                            <td width="140px" nowrap bgcolor="#fefefe"><a id="bild" name="XXX.jpg" onMouseOver="bildaendern();">Max Mustermann</td>
                            PHP-Code:
                            function bildaendern() 

                              var 
                            bildPfad document.getElementById('bild').name
                              
                            alert(bildPfad); 

                            Das ist zwar eine fürchterliche Krücke, aber es funktioniert. Btw: bgcolor ist völlig veraltet und wird nicht mehr verwendet.

                            Peter
                            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                            Meine Seite

                            Kommentar


                            • #15
                              Hallo Kropff, ich hab das jetzt mal so probiert wie du es beschrieben hast, aber leider ohne Erfolg... ich hab immer noch das selbe Problem.

                              Kommentar

                              Lädt...
                              X