Problem mit Funktion, die mit php-Werten gefüllt ist

Acriss

Gesperrt
Hi

sry für idie Überschrift, vllt etwas schwer verständlich^^

Aber: Das Problem ist wirklich so:
Ich erstelle einen Link mit PHP, allerdings wird dabei ein Umbruch erzeugt, warum weiß ich nicht.
PHP:
else
{
echo '<a href="#" onClick="changeWindow(';
echo $row[0];
echo ', \''.$tbl[$i].'\');">';
echo $row[0];
echo '</a><br />';
}
Das ist jetzt nur ein Lösungsversuch, ich hatte es vorher mit der "Punktverkettung"
also echo 'Hallo '.$name.' Willkommen'; usw

Naja
das Erebnis im Quelltext is folgendes:
<a href="#" onclick="changeWindow('Elw 1 Florian Hande 01/11-01
', 'Berufs 1');">Elw 1 Florian Hande 01/11-01
</a>
Aber das soll alles in einer Zeile stehen.

Was ich suche:
Einen Weg, um die Daten in die Javascript funktion zu stecken, sodass die Auch funktioniert. :)
 
Hi,

das geht z.B. so:
PHP:
echo '<a href="#" onClick="changeWindow(\'' . $row[0]. '\', \''.$tbl[$i].'\');">'. $row[0]. '</a><br />';


Gruß

.:lay-z-cow:.
 
Ähem...

Das kann ja gut sein, aber bei mir funktioniert es. ;) Also hast du entweder die Verkettung falsch angewendet oder deine Werte stimmen nicht.

Beispiel:
Code:
<script type="text/javascript">
	function changeWindow(param1, param2){	
		alert("param1: " + param1 + " param2: " + param2);		
	}
</script>

<?
$row[0] = "Welt";
$tbl[$i] = "Hallo";

echo '<a href="#" onClick="changeWindow(\'' . $row[0]. '\', \''.$tbl[$i].'\');">'. $row[0]. '</a><br />'; 
?>


Grüße

.:lay-z-cow..
 
Hmm. bei mir nicht.
Ich poste einfach mal alles zugehörige:
PHP:
$tbl = array('array', 'Berufs 1', 'Berufs 2', 'Berufs 3', 'hoheRet', 'RetNord', 'RetSued', 'SEG', 'THW', 'Polizei', 'bereitpol');
                                 $sel = mysql_fetch_assoc(mysql_query("SELECT Datum FROM `Status` ORDER BY Datum DESC Limit 1,1"));
				for ($i=1;$i<=10;$i++)
                                 	{
         	                        $select = "SELECT `".$tbl[$i]."`, besetzt FROM Fahrzeuge WHERE Datum = '".$sel['Datum']."'";
					$query = mysql_query($select);
                                         echo '<tr><td>';
					echo '<div id="div'.$i.'" style="display:none;">';
					while ($row = mysql_fetch_array($query))
                                 		{
                                                 if ($row[0] == '') continue;
                                                 if ($row[1] != 'nein')
                                                 	{
							echo $row[0].'Besetzt!';
                                                         echo '<br />';
                                                         }
                                                 else
                                                 	{
                                                         echo '<a href="#" onClick="changeWindow(\'' . $row[0]. '\', \''.$tbl[$i].'\');">'. $row[0]. '</a><br />';
                                                         }
                                         	}
					echo '</div>';
                                 	echo '</td></tr>';
                                         }
Und die js-Funktion
PHP:
function changeWindow(fahrzeug, wache)
	{
         window.open("status.php?fahrzeug="+fahrzeug+"&wache="+wache+"&first=1", "", "width=500, height=500, resizable=yes");
         }

Ich komm echt nicht drauf, denn wenn ich den Link in eine Reihe schreibe, dann macht er das auch. Ich hatte vor dem window.open einfach mal 2 alerts gesetzt, die gaben die Richtigen Werte aus. Liegt ein Fehler bei der Syntax, oder was ist da los?
 
Zurück