Ich habe einen Captcha Script der den erzeugten Code in eine Datenbank schreibt.
Dieser wird mit der Zeit immer voller.
Wie bekomme ich den Inhalt der Tabelle nach der Routine gelöscht?
Tabelle Code - datenbank
Forumlar
Script
Ich hatte schon versucht mit :
mysql_query("DELETE FROM tabelle WHERE id = $Code");
am Ende des Scriptes, aber er löscht den Inhalt der Tabelle nicht.
Danke für eure Hilfe.
mfg
Sven
Dieser wird mit der Zeit immer voller.
Wie bekomme ich den Inhalt der Tabelle nach der Routine gelöscht?
Tabelle Code - datenbank
PHP-Code:
--
-- Tabellenstruktur für Tabelle `Code`
--
CREATE TABLE `Code` (
`ID` int(11) NOT NULL auto_increment,
`Code` varchar(6) NOT NULL default '',
`AngezeigterCode` varchar(12) NOT NULL default '',
PRIMARY KEY (`ID`)
) TYPE=MyISAM AUTO_INCREMENT=1;
PHP-Code:
$DatabaseHost = "localhost";
$DatabaseUser = "user";
$DatabasePassword = "password";
$Database = "mydatabase";
$TableCode = "Code";
$DatabasePointer = mysql_connect($DatabaseHost, $DatabaseUser, $DatabasePassword);
mysql_select_db($Database, $DatabasePointer);
$Buchstaben=array("A", "B", "C", "D", "E", "F", "G", "H", "K", "M",
"N", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y");
$Zahlen=array("2", "3", "4", "5", "6", "7", "8", "9");
for($i=0, $Code=""; strlen($Code)<6; $i++)
{
if(rand(0, 1)==0 && isset($Buchstaben))
{
$Buchstabe=$Buchstaben[rand(0, count($Buchstaben))];
$Code.=$Buchstabe;
$AngezeigterCode.=$Buchstabe." ";
}
else
{
$Zahl=$Zahlen[rand(0, count($Zahlen))];
$Code.=$Zahl;
$AngezeigterCode.=$Zahl." ";
}
}
$AngezeigterCode=trim($AngezeigterCode);
mysql_query("INSERT INTO $TableCode (Code, AngezeigterCode)
VALUES ('$Code', '$AngezeigterCode')", $DatabasePointer);
$ID=mysql_insert_id();
Script
PHP-Code:
$DatabaseHost = "localhost";
$DatabaseUser = "user";
$DatabasePassword = "password";
$Database = "mydatabase";
$TableCode = "Code";
$DatabasePointer = mysql_connect($DatabaseHost, $DatabaseUser, $DatabasePassword);
mysql_select_db($Database, $DatabasePointer);
$ResultPointer=mysql_query("SELECT Code FROM $TableCode WHERE ID='".$_REQUEST['ID']."'", $DatabasePointer);
$Result=mysql_fetch_object($ResultPointer);
if(strtolower($_REQUEST['Code']) == strtolower($_REQUEST['EingegebenerCode']))
{
Inhalt
}
else
{
echo 'Der Code wurde fehlerhaft eingegeben';
}
echo 'okay';
mysql_query("DELETE FROM tabelle WHERE id = $Code");
am Ende des Scriptes, aber er löscht den Inhalt der Tabelle nicht.
Danke für eure Hilfe.
mfg
Sven
Kommentar