Probleme bei Javascript

xxNoXioUSxx

Grünschnabel
Hallo Leute,
Ich weiß nicht woran es liegt.Ich habe vier Scripte die ich zusammen verwende.Ich habe zwei PHP script,eindavon gibt mir einen html-tag aus,den ich per JS in ein Div schreibe.Das Prob,Ich übergebe über dem html tag auch eine ID.dies funktioniert noch.Als ich dann aber die Funktion,die dann über den Mouseover durchgeführt wird liefert mir dann ein "undefinde".
Hier mal die vier scripte:
Das Html-Script(mit JS):
Code:
<script language="JavaScript" type="text/javascript">
<!--
function loadBild(BilderID){
//erstellen des requests(Anfrage an den Server),die PHP-Script aufruft
var ID = BilderID;
var url = "loadBild.php?BildID=" +ID;
var req = null;
  try{
    req = new XMLHttpRequest();
  }
  catch (ms){
    try{
      req = new ActiveXObject("Msxml2.XMLHTTP");
    } 
    catch (nonms){
      try{
        req = new ActiveXObject("Microsoft.XMLHTTP");
      } 
      catch (failed){
        req = null;
      }
    }  
  }
  if (req == null)
    alert("Error creating request object!");
    //anfrage erstellen (GET, url ist localhost,
    //request ist asynchron      
    req.open("GET",url, true);
    req.onreadystatechange = function(){            
      switch(req.readyState) {
        case 4:
          if(req.status!=200) {
            alert("Fehler:"+req.status); 
          }
	  	  else{    
            //schreibe die antwort in den div container mit der id = eins content 
            document.getElementById('Bilder').innerHTML = '<strong>'+req.responseText+'</strong>';
          }
          break;
        default:
          return false;
          break;     
      }
    };
  req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  req.send(null);
}  
function loadBilder(){
//erstellen des requests(Anfrage an den Server),die PHP-Script aufruft
var req = null;
  try{
    req = new XMLHttpRequest();
  }
  catch (ms){
    try{
      req = new ActiveXObject("Msxml2.XMLHTTP");
    } 
    catch (nonms){
      try{
        req = new ActiveXObject("Microsoft.XMLHTTP");
      } 
      catch (failed){
        req = null;
      }
    }  
  }
  if (req == null)
    alert("Error creating request object!");
    //anfrage erstellen (GET, url ist localhost,
    //request ist asynchron      
    req.open("GET",'loadbilder.php', true);
    req.onreadystatechange = function(){            
      switch(req.readyState) {
        case 4:
          if(req.status!=200) {
            alert("Fehler:"+req.status); 
          }
	  	  else{    
            //schreibe die antwort in den div container mit der id = eins content 
            document.getElementById('Bilder').innerHTML = '<strong>'+req.responseText+'</strong>';
          }
          break;
        default:
          return false;
          break;     
      }
    };
  req.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  req.send(null);
}
//-->
</script>
<div id="alles" style="float:right">
<a onclick="loadBilder();">Bilder laden</a>
  <div id="Bilder" style=" float:right">
    <a href="#" onMouseOver="change('h','003')"><img src="003.jpg" width="100" height="100" border=0></a><br />
    <a href="#" onclick="change('h','1001506_1')" onMouseOver=""><img src="1001506_1.jpg" width="100" height="100" border=0></a>
  </div>
  <div id="Bild" style="float:none"; height:100%; width:100%"><img src="1.gif" width="200" height="200" name="h" border=0 /></div>
  
</div>
Das Php Script loadBilder:
PHP:
<?
include("connect.php");
//Daten die ausgegeben werden soll aus der Datenbank holen
$result = mysql_query("Select Linkklein,BilderID FROM bilder");
//Solange noch eine Zeile enthalten ist wird sie ausgegeben
while($row = mysql_fetch_array($result)){ 
  ?><a href="#" onMouseOver="loadBild(<?/*hier fehlt das echt*/ $row["BilderID"] ?>);"><img src="<? echo $row["Linkklein"] ?>" alt="not found" /></a><br /><?
}
include("disconnect.php");
?>
und noch das loadBild.php:
PHP:
<?
  //include("connect.php");
  $BildID = $_GET["BildID"];
  echo $BildID;
  //Daten die ausgegeben werden soll aus der Datenbank holen
?>
Ich weiß selber nicht woran es liegt!
mfg xxNoxiousxx
 
Zuletzt bearbeitet:
Du verwendest da ja Ajax-Praktiken. Ich finde deinen Code jedoch sehr umständlich, du kannst auch einfach eine Datei einbinden und deren Inhalt in ein Feld mit ID schreiben, wenn du diese Funktion benutzt:
Javascript:
ajax.update("deinordner/deinedatei.php", 'FeldID');
und diesen Code vorher eingebunden hast:
Javascript:
function $(e){if(typeof e=='string')e=document.getElementById(e);return e};
function collect(a,f){var n=[];for(var i=0;i<a.length;i++){var v=f(a[i]);if(v!=null)n.push(v)}return n};

ajax={};
ajax.x=function(){try{return new ActiveXObject('Msxml2.XMLHTTP')}catch(e){try{return new ActiveXObject('Microsoft.XMLHTTP')}catch(e){return new XMLHttpRequest()}}};
ajax.serialize=function(f){var g=function(n){return f.getElementsByTagName(n)};var nv=function(e){if(e.name)return encodeURIComponent(e.name)+'='+encodeURIComponent(e.value);else return ''};var i=collect(g('input'),function(i){if((i.type!='radio'&&i.type!='checkbox')||i.checked)return nv(i)});var s=collect(g('select'),nv);var t=collect(g('textarea'),nv);return i.concat(s).concat(t).join('&');};
ajax.send=function(u,f,m,a){var x=ajax.x();x.open(m,u,true);x.onreadystatechange=function(){if(x.readyState==4)f(x.responseText)};if(m=='POST')x.setRequestHeader('Content-type','application/x-www-form-urlencoded');x.send(a)};
ajax.get=function(url,func){ajax.send(url,func,'GET')};
ajax.gets=function(url){var x=ajax.x();x.open('GET',url,false);x.send(null);return x.responseText};
ajax.post=function(url,func,args){ajax.send(url,func,'POST',args)};
ajax.update=function(url,elm){var e=$(elm);var f=function(r){e.innerHTML=r};ajax.get(url,f)};
ajax.submit=function(url,elm,frm){var e=$(elm);var f=function(r){e.innerHTML=r};ajax.post(url,f,ajax.serialize(frm))};
Da sind auch noch viele nützliche Funktionen mehr drin!
 
Ich werd mich jetzt erst mal mit dem außeinandersetzen und werd mit meinem erst mal alles fertig machen und dann schau ich noch was ich so verbessern kann.weil meine Funktioniert ja auch^^!
Trotzdem vielen Dank ich werds mir aufjedenfall mal reinpfeifen^^
 

Neue Beiträge

Zurück