2011-01-09 17 views
1
<?php 
if(isset($left)) 
{ 
echo "<button name = rightname onclick= \" disp();\">". "$left"."</button>"; 
} 
?> 

hier DISP ist eine PHP-Funktion. aber ich kann es nicht benutzen.einschließlich PHP in HTML-Code in PHP

<?php if(isset($left)) : ?> 
    <button name="rightname" onclick="<?php disp(); ?>"><?php echo $left ?></button> 
<?php endif; ?> 
+6

Nein, 'disp' ist eine JavaScript-Funktion in diesem Kontext. Wenn Sie 'disp()' als PHP-Funktion verwenden möchten, müssen Sie ein Postback durchführen und prüfen, ob der Benutzer auf 'rightname' geklickt hat. – BoltClock

+0

Entfernen Sie die Backslashes und fügen Sie Punkte hinzu: '" .disp(). ">' –

Antwort

-1

Ich würde dies schreiben Korrigieren Sie Ihren Code wie folgt:

Ich wollte zeigen, dass Sie einfache Anführungszeichen verwenden können, um die Handhabung zu erleichtern doppelte Anführungszeichen innen.

+0

[Referenz für alternative 'if' /' endif' Syntax] (http://php.net/manual/en/control-structures.alternative -syntax.php) – marcog

+0

Ich bezweifle ernsthaft, dass die Funktion disp() gültigen DHTML-Parameter erzeugt –

+0

danke Ihnen allen.Ich habe meine Zweifel beseitigt ... Und ya, wie ich eine Website mache, werde ich immer noch Hilfe von euch allen brauchen (wenn überhaupt) ... Also, seid da ... mit mir ... – xtras

0

versuchen einfach so

<?php 
if(isset($left)) 
{ 
?> 
    <button name ="rightname" onclick= "<?php disp();?>"><?php echo $left;?></button> 
<?php 
} 
?> 
+0

Wie denkst du, was ist disp()? Funktionsausgabe? –

0

, wenn Sie Antwort Aston nicht verwenden, können Sie: kann mir jemand sagen, wie dieses Problem zu überwinden ...

+0

OP sagt 'disp()' ist eine PHP-Funktion. – marcog

+0

Tut mir leid, ich habe es nicht mit BoltClock bekommen. Bearbeitet. Vielen Dank! – Aif

1

Die einzige Möglichkeit, eine PHP-Funktion als Reaktion auf einen Benutzer auszuführen, der auf etwas in ihrem Browser klickt, ist das Senden einer HTTP-Anforderung an den Server.

Der einfachste Weg, dies zu erreichen, wäre:

<a href="disp.php"><?php echo htmlspecialchars($left); ?></a> 

Sie müssen dann disp.php so schreiben, dass es die Funktion, die Sie ausführen möchten enthält, und nennt es. Dann müssen Sie eine entsprechende Antwort an den Browser zurückgeben (z. B. eine anzuzeigende Seite oder eine Weiterleitung (über Standort)).

Sie könnten auch mit XMLHttpRequest (wahrscheinlich über eine Drittanbieter-Bibliothek wie YUI oder jQuery) aussehen Verwendung von JavaScript ohne dass der Benutzer die HTTP-Anforderung machen verlassen der Seite (Ajax). die Menge an Wissen Sie auf Ihre Frage basiert zu haben scheinen , könnten Sie ein introduction to JavaScript zuerst müssen.

0

Onclick funktioniert nur für JavaScript-Funktionen nicht PHP-Funktionen, die nicht funktionieren Siehe BoltClocks Kommentar unter Ihrer Frage

Eine der Möglichkeiten, PHP in Verbindung mit Javascript zu verwenden, ist die Verwendung eines Ajax-Posts (http://api.jquery.com/jQuery.post/). ZB:

$.post("test.php", { name: "John", time: "2pm" }, 
    function(data){ 
    alert("Data Loaded: " + data); 
    }); 

Und wenn Variablen mit Verketten Sie brauchen nicht auf die Variable zwischen doppelten Anführungszeichen zu setzen, oder setzen Sie einfach die Variable in der Zeichenfolge ohne die doppelten Anführungszeichen zu schließen.

echo "<button name='rightname' >". $left."</button>"; 

Oder (wird nur funktionieren, wenn doppelte Anführungszeichen)

echo "<button name='rightname' >$left</button>"; 
0

Bevor mit AJAX stört, würden Sie mir etwas dagegen zu fragen, was die disp() Funktion tut? Wenn es sich um etwas handelt, das nicht stark auf Serverinteraktionen angewiesen ist (Dateioperationen, Datenbankverbindungen), können wir Ihnen möglicherweise helfen, es in JS zu portieren und die Notwendigkeit von AJAX zu beseitigen.

Verwandte Themen