Hallo Leute,
ich benutze sajax um AJAX Funktionalitäten zu nutzen. Auf meiner Seite benutze ich viele unterschiedlichen Klassen. Nun wollte ich in einer reingelinkten Klasse Ajax nutzen:
Beispiel
Hauptteil
<?php
include("class_test.php");
$test = new class_test();
$test->verwalten();
?>
#######################################################
Klasse
<?php
class class_test
{
function class_test()
{
}
function verwalten()
{
require("Sajax.php");
sajax_init();
sajax_export("ajax_wurst_schritt2"); // list of functions to export
sajax_handle_client_request(); // serve client instances
$sajax_debug_mode = 1;
$javascript = $this->javascript();
echo "<script language='JavaScript1.2'>";
sajax_show_javascript();
echo "</script>\n\n";
echo $javascript;
echo "<span id=wurst>";
echo "hallo";
echo "</span>";
echo "<input type=button onclick="ajax_wurst_schritt1('wurst');"";
}
function ajax_wurst_schritt2($gibmir)
{
$result = $gibmir . " ist lecker";
return $result;
}
function javascript()
{
$daten_script .= "<script>";
$daten_script .= "function ajax_wurst_schritt1(gibmir)";
$daten_script .= "{";
$daten_script .= "x_ajax_wurst_schritt2(gibmir, ajax_wurst_schritt3);";
$daten_script .= "}";
$daten_script .= "function ajax_wurst_schritt3(result)";
$daten_script .= "{";
$daten_script .= "document.getElementById('wurst').innerHTML = result";
$daten_script .= "}";
$daten_script .= "</script>";
return $daten_script;
}
}
?>
Leider funktioniert das nicht. Wenn ich nun die Klasse als eigenständigen Code laufen lasse, funktioniert alles hervorragend:
Code:
<?php
require("Sajax.php");
sajax_init();
sajax_export("ajax_wurst_schritt2"); // list of functions to export
sajax_handle_client_request(); // serve client instances
$sajax_debug_mode = 1;
$javascript = javascript();
echo "<script language='JavaScript1.2'>";
sajax_show_javascript();
echo "</script>\n\n";
echo $javascript;
echo "<span id=wurst>";
echo "hallo";
echo "</span>";
echo "<input type=button onclick="ajax_wurst_schritt1('wurst');"";
function ajax_wurst_schritt2($gibmir)
{
$result = $gibmir . " ist lecker";
return $result;
}
function javascript()
{
$daten_script .= "<script>";
$daten_script .= "function ajax_wurst_schritt1(gibmir)";
$daten_script .= "{";
$daten_script .= "x_ajax_wurst_schritt2(gibmir, ajax_wurst_schritt3);";
$daten_script .= "}";
$daten_script .= "function ajax_wurst_schritt3(result)";
$daten_script .= "{";
$daten_script .= "document.getElementById('wurst').innerHTML = result";
$daten_script .= "}";
$daten_script .= "</script>";
return $daten_script;
}
?>
Habe ich was vergessen oder übersehen?
Funktioniert AJAX, bzw. SAJAX, nicht in einer Klasse?