Javascript Code (NOOB Frage)

Hey…

Hab ein Problem. Habe mir einen Code zusammengebastelt aber der funzt nich… :hihi:

Kann mal einer pls gucken was ich falsch gemacht habe?

[code][/code]

Ich rufe die Funktion so auf: ... echo' <a onclick="javascript:an(\'1\',$fotoid,$title,$beschreibung,$datei);"><img src="'.BASEHREF.'/fotoalbum/'.$albumid.'/'.$datei.'" alt="'.$title.'" title="'.$title.'" border="0" width="80" height="60">&nbsp;</a>'; ...(in einer while Schleife.

lg Lukas

Ja, du - als allererstes wirfst du bei sowas bitte immer einen Blick in die JavaScript-Fehlerkonsole eines vernünftigen Browsers wie bspw. FireFox.

Und zum x-ten Mal: “Funzt nich” ist keine brauchbare Problembeschreibung, sondern Bullsh*t.

Das absolute Mindeste ist eine Beschreibung, was dein Script machen soll, und was stattdessen passiert (und wenn letzteres nur die Ausgabe von Fehlermeldungen ist, s.o.)

okay… also…

Bei klick auf ein Bild sollen Informationen in ein DIV Bereich eingefügt werden.

Die Informationen werden aus der DB ausgelesen und ich versuche diese dann in die JS Funktion zu übertragen.
(Was aber iwie nicht geht…)
Die Informationen werden dann (wieman im Code sieht) mit inner.HTML… in den DIV Bereich eingefügt und sichtbar gemacht.

Wenn ich nun aber auf das Bild klicke welches die Funktion aufruft passiert NIX.

Gute Beschreibung oder schei* Beschreibung? (ich gebs zu… sie is schei*e :smiley:)
Hoffe du/ihr könnt damit was anfangen :wink:

lg

EDIT: Und die Fehlerkonsole gibt auch nix aus außer : session_destroy is not defined"

Und ich habe das Script mal ein bisschen vereinfacht:

[code]

function an (fotoid,title,beschreibung,dateipfad) {

var infotext = “<a onclick=‘javascript:aus(1)’><img src=’…/images/close.gif’ border=‘0’ alt=‘schließen’ title=‘schließen’>

Name : “+ titel +”
” +beschreibung+ “
<img src=’”+ dateipfad +"’ class=‘bigimage’ titel=’" +title+ “’>”;
var fehlertext= “Ein Fehler ist aufgetreten! Das Bild ist nicht verfügbar!”;

document.getElementById(‘bildinfo’).innerHTML=infotext;
document.getElementById(‘bildinfo’).style.visibility = ‘visible’;

}[/code]

Warum zum Geier lieferst du dann keine bessere?

PHP-Code ist erst mal uninteressant, wenn es um ein clientseitiges Problem geht.
Also poste in solchen Fällen keinen serverseitigen Code, sondern das, was der Client erhält.
Ich vermute, da wird man in diesem Falle sehr schnell sehen, was falsch ist.

hab ich doch gemacht! oder nicht? das ist doch der Javascript Code…

Oder was meinst du jetzt?

Das, was mit echo 'irgendwas… anfing, war bestimmt kein clientseitiger Code.

Dir ist schon klar das php serverseitig ist und javascript den php code quasi garnicht beinflussen kann.
guk dir mal den hover an der sieht verdáchtig aus :susp:

@chrisb… Das mit dem echo da hab ich nur gezeigt wie ich diese Funktion aufrufe. und ich glaube das da der Fehler liegt…

Hier mal der ganze Code:[code]<?php $albumid = $_GET[“album”];

echo’

';

$result1 = mysql_query(“SELECT * FROM fotos WHERE albumid = ‘$albumid’”);

while($result = mysql_fetch_assoc($result1))
{
$datei = $result[“datei”].’.jpg’;
$fotoid = $result[“fotoid”];
$title = $result[“title”];
$beschreibung = $result[“beschreibung”];
echo’
'.$title.' ';

}
echo’

'; ?>[/code]

Hoffe ihr seht da durch :smiley:

Das zeigst du damit aber nicht.
Damit zeigst du lediglich PHP-Code, der irgendwas erzeugt - was wir nicht beurteilen können, weil wir die Inhalte deiner Variablen nicht kennen.

Ziegst du uns jetzt bitte endlich den Code, wie er am Client ankommt (und zwar nicht alles, sondern nur die relevanten Stellen)?
Das kann doch nicht so schwer zu kapieren sein …

[code]function an (fotoid,title,beschreibung,dateipfad) {

var infotext = “<a onclick=‘javascript:aus(1)’><img src=’…/images/close.gif’ border=‘0’ alt=‘Bild’ title=‘Bild’>

Name : “+ titel +”
” +beschreibung+ “
<img src=’”+ dateipfad +"’ class=‘bigimage’ titel=’" +title+ “’>”;

document.getElementById(‘bildinfo’).innerHTML=infotext;
document.getElementById(‘bildinfo’).style.visibility = ‘visible’;

}[/code]
das?

Nein, auch - und vor allem - den Rest.

Das, wo vorher echo vor stand - nur eben ohne echo, nachdem es von PHP ausgewertet wurde, so wie es beim Browser ankommt.

hä? aber dann kann man doch keine Fehler finden oder?

Also soll ich sozusagen den Quelltext aus´m Browser kopieren?

[quote=“lu-fun”]hä? aber dann kann man doch keine Fehler finden oder?

Also soll ich sozusagen den Quelltext aus´m Browser kopieren?[/quote]
Was denn sonst? Das sag ich doch die ganze Zeit …

Wo sonst willst du denn Fehler finden, die im Browser auftreten?
Wo läuft JavaScript …?

im Browser… :wink:

Ich hab jetzt ne Fehler Ausgabe:

Fehler: missing ) after argument list
Quelltext:
javascript:an(2,Titel des Bildes,Beschreibung,foto.jpg);

Was bedeutet das?

[quote=“lu-fun”]Fehler: missing ) after argument list
Quelltext:
javascript:an(2,Titel des Bildes,Beschreibung,foto.jpg);

Was bedeutet das?[/quote]
Dass hinter der Argumentliste keine runde Klammer folgt, obwohl dort eine stehen müsste.

Jetzt kommst du mit “aber da hinten steht doch eine )?” - ja, da hinten. Aber das ist nicht das Ende der Argumentliste - das ist schon weiter vorne, denn hinter der Variablen Titel, die du als zweiten Parameter übergibst, folgt kein Komma mehr - also muss die Argumentliste dort zu Ende sein.

und wie kann ich den Fehler beheben?

Also muss ich statt dem leerzeichen irgend was anderes einsetzen?

[quote=“lu-fun”]und wie kann ich den Fehler beheben?

Also muss ich statt dem leerzeichen irgend was anderes einsetzen?[/quote]
Mehrere Parameter beim Aufruf einer JavaScript-Funktion trennt man wie in PHP auch mit einem Komma.

Aber das ist in diesem Falle gar nicht, was du willst.

Ich schrieb extra “hinter der Variablen Titel” - in der Hoffnung, dass dich das zum Nachdenken anregt.

hmmm… ich weiß jetzt echt nicht worauf du hinaus willst…

Das ist mir klar seufz

Wie wär’s, wenn du dich mal mit den Grundlagen von JavaScript beschäftigen würdest?
Dann wüsstest du nämlich auch, was der Unterschied zwischen
alert(hallo);
und
alert(“Hallo”);
ist.

okay… ich habs jetzt gecheckt… :smiley:

Hab nun ein ’ bei jeder Variable gesetzt…

aber nun entsteht folgender Fehler:
Fehler: titel is not defined

Obwohl er eig. definiert ist… :smiley::smiley: