Hallo,
ich habe ein PHP-Script geschrieben mit dem man (per Formular-Eingabe) überprüfen kann, ob ein USER auf zwei verschiedenen Datenbanken bereits existiert. Je nach dem kann man sich dann anmelden oder einen neuen USER-NAME auswählen.
Das ganze funktioniert auch tip top ausserhalb von Typo3.
Wenn ich nun daraus eine Extension erstelle, erhalte ich zwar die Eingabemaske, es wird mir jedoch nach dem "submit" nichts angezeigt.
Bitte bitte kann mir jemand helfen.
Bein funktionierender Code ausserhalb von typo3:
<?php
// Verwendete Variablen:
$bad_icon = "<img src="http://xxxx/bad.gif" alt="" />";
$ok_icon = "<img src="http://xxxx/ok.gif" alt="" />";
// $anzeige = "Bitte geben Sie ihren Wunsch Blogname an";
// end Verwendete Variablen
switch ($wunschurl) {
case "myweblog":
// Verbindung zur Datenbank
$connect_myweblog = mysql_connect("localhost","xxx","xxx");
mysql_select_db("myweblog_lifetype", $connect_myweblog);
// Auswahl der Spalte "user"
$result = mysql_query("SELECT user FROM
lifetype_users", $connect_myweblog);
while ($row = mysql_fetch_array($result))
{
// Überprüfen ob der Wunsch-User-Nanme nicht bereits registriert wurde
if ($row[user] == $wunschuser) {
$status = "vergeben";
}
}
if ($status == "vergeben") {
$res_anzeige = $bad_icon."<br />";
$res_anzeige .= "Der Blog: $wunschuser.$wunschurl.ch ist bereits vergeben";
} else {
$res_anzeige = $ok_icon."<br />";
$res_anzeige .= "Der Blog: $wunschuser.$wunschurl.ch ist noch frei"."<br />";
$res_anzeige .= "
<a href="http://xxxx">jetzt anmelden</a>
";
}
break;
case "blogit":
//blogit.ch - Verbindung zur Datenbank
$connect_blogit = mysql_connect("localhost","xxx","xxx");
mysql_select_db("blogit_lifetype", $connect_blogit);
// Auswahl der Spalte "user"
$result = mysql_query("SELECT user FROM
blogit_lifetype_users", $connect_blogit);
while ($row = mysql_fetch_array($result))
{
// Überprüfen ob der Wunsch-User-Nanme nicht bereits registriert wurde
if ($row[user] == $wunschuser) {
$status = "vergeben";
}
}
if ($status == "vergeben") {
$res_anzeige = $bad_icon."<br />";
$res_anzeige .= "Der Blog: $wunschuser.$wunschurl.ch ist bereits vergeben";
} else {
$res_anzeige = $ok_icon."<br />";
$res_anzeige .= "Der Blog: $wunschuser.$wunschurl.ch ist noch frei"."<br />";
$res_anzeige .= "
<a href="http://xxx">jetzt anmelden</a>
";
}
break;
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="hidden" name="no_cache" value="1" />
<input name="wunschuser" type="text" size="20" maxlength="70" />.
<select name="wunschurl">
<option value="myweblog">myweblog.xxx</option>
<option value="blogit">blogit.xxx</option>
</select>
<input type="submit" value="check" />
</form>
<?php print $res_anzeige; ?>
Und so habe ich das versucht umzusetzen:
<?php
require_once(PATH_tslib.'class.tslib_pibase.php');
class tx_kiddoglifetypeusercheck_pi1 extends tslib_pibase {
var $prefixId = 'tx_kiddoglifetypeusercheck_pi1'; // Same as class name
var $scriptRelPath = 'pi1/class.tx_kiddoglifetypeusercheck_pi1.php'; // Path to this script relative to the extension dir.
var $extKey = 'kiddog_lifetype_user_check_'; // The extension key.
var $pi_checkCHash = TRUE;
/**
* [Put your description here]
*/
function main($content,$conf) {
$this->conf=$conf;
$this->pi_setPiVarDefaults();
$this->pi_loadLL();
// Verwendete Variablen:
$bad_icon = "<img src="http://xxxx/bad.gif" alt="" />";
$ok_icon = "<img src="http://xxx/ok.gif" alt="" />";
// $anzeige = "Bitte geben Sie ihren Wunsch Blogname an";
// end Verwendete Variablen
switch ($wunschurl) {
case "myweblog":
// Verbindung zur Datenbank
$connect_myweblog = mysql_connect("localhost","xxx","xxx");
mysql_select_db("myweblog_lifetype", $connect_myweblog);
// Auswahl der Spalte "user"
$result = mysql_query("SELECT user FROM
lifetype_users", $connect_myweblog);
while ($row = mysql_fetch_array($result))
{
// Überprüfen ob der Wunsch-User-Nanme nicht bereits registriert wurde
if ($row[user] == $wunschuser) {
$status = "vergeben";
}
}
if ($status == "vergeben") {
$res_anzeige = $bad_icon."<br />";
$res_anzeige .= "Der Blog: $wunschuser.$wunschurl.ch ist bereits vergeben";
} else {
$res_anzeige = $ok_icon."<br />";
$res_anzeige .= "Der Blog: $wunschuser.$wunschurl.ch ist noch frei"."<br />";
$res_anzeige .= "
<a href="http://xxx">jetzt anmelden</a>
";
}
break;
case "blogit":
//blogit.ch - Verbindung zur Datenbank
$connect_blogit = mysql_connect("localhost","xxx","xxx");
mysql_select_db("blogit_lifetype", $connect_blogit);
// Auswahl der Spalte "user"
$result = mysql_query("SELECT user FROM
blogit_lifetype_users", $connect_blogit);
while ($row = mysql_fetch_array($result))
{
// Überprüfen ob der Wunsch-User-Nanme nicht bereits registriert wurde
if ($row[user] == $wunschuser) {
$status = "vergeben";
}
}
if ($status == "vergeben") {
$res_anzeige = $bad_icon."<br />";
$res_anzeige .= "Der Blog: $wunschuser.$wunschurl.ch ist bereits vergeben";
} else {
$res_anzeige = $ok_icon."<br />";
$res_anzeige .= "Der Blog: $wunschuser.$wunschurl.ch ist noch frei"."<br />";
$res_anzeige .= "
<a href="http://xxx">jetzt anmelden</a>
";
}
break;
}
$content='
<form action="'.$this-">pi_getPageLink($GLOBALS['TSFE']->id).'" method="POST">
<input type="hidden" name="no_cache" value="1" />
<input name="wunschuser" type="text" size="20" maxlength="70" />.
<select name="wunschurl">
<option value="myweblog">myweblog.ch</option>
<option value="blogit">blogit.ch</option>
</select>
<input type="submit" name="'.$this-" />prefixId.'[submit_button]" value="'.htmlspecialchars($this->pi_getLL('submit_button_label')).'">
</form>
';
$content .= $res_anzeige;
return $this->pi_wrapInBaseClass($content);
}
}
if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/kiddog_lifetype_user_check_/pi1/class.tx_kiddoglifetypeusercheck_pi1.php']) {
include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/kiddog_lifetype_user_check_/pi1/class.tx_kiddoglifetypeusercheck_pi1.php']);
}
?>
Ich komme wirklich nicht mehr weiter... Und ich bin mir sicher, dass es sich um Kleinigkeiten handelt.
Besten Dank an all diejenigen welche mir Helfen!
Gruss
GreenBanana