Mal wieder ein PHP Dau.... Scripteinbau

Hier werden Probleme rund um das Zahlen Captcha behandelt

Moderator: frameguard

Mal wieder ein PHP Dau.... Scripteinbau

Beitragvon ixvor » 24.01.2008, 17:38

Hallo zusammen,

leider habe ich nicht viel Ahnung von PHP und komme seit Stunden nicht mehr weiter :(
Schon wieder ein PHP Dau… sorry…

Ich habe ein Formular, die eingegebenen Daten werden in einer Datenbank gespeichert. Funktioniert wunderbar. Ich weiß nicht wo ich die If Abfrage und diesen Code ins Script einbauen muss. Ich schätze mal in meine speichern.php?

Hier mein Formular:

Code: Alles auswählen
<form id="form2" name="form2" method="post" action="speichern.php">
            <table width="470" border="0" cellspacing="10" cellpadding="2px">
                <tr>
                    <td><strong>Firmenname</strong></td>
                    <td><label>
                        <input type="text" name="Name" id="Name" />
                        </label></td>
                </tr>
                <tr>
                    <td><strong>Str.</strong></td>
                    <td><label>
                        <input type="text" name="Strasse" id="Strasse" />
                        </label></td>
                </tr>
                <tr>
                    <td><strong>PLZ</strong></td>
                    <td><label>
                        <input type="text" name="PLZ" id="PLZ" />
                        </label></td>
                </tr>
                <tr>
                    <td><strong>Ort</strong></td>
                    <td><label>
                        <input type="text" name="Ort" id="Ort" />
                        </label></td>
                </tr>
                <tr>
                    <td><strong>Tel</strong></td>
                    <td><label>
                        <input type="text" name="Tel" id="Tel" />
                        </label></td>
                </tr>
                <tr>
                    <td><strong>Fax</strong></td>
                    <td><label>
                        <input type="text" name="Fax" id="Fax" />
                        </label></td>
                </tr>
                <tr>
                    <td><strong>E-Mail</strong></td>
                    <td><label>
                        <input type="text" name="EMail" id="EMail" />
                        @
                        <input type="text" name="EMailDomain" id="EMailDomain" />
                        </label></td>
                </tr>
                <tr>
                    <td><strong>URL<br />
                        </strong>(Die URL Ihrer Firmenwebseite)</td>
                    <td><label>
                        <input type="text" name="URL" id="URL" />
                        </label></td>
                </tr>
                <tr>
                    <td><strong>URL-Titel<br />
                        </strong>(Der Titel, mit dem Ihre Webseite verlinkt wird - Beispiel)</td>
                    <td><label>
                        <input type="text" name="URLTitel" id="URLTitel" />
                        </label></td>
                </tr>
                <tr>
                    <td><strong>Beschreibung<br />
                        </strong>(max. 250 Zeichen - bitte keinen Text kopieren, neuen Text selber verfassen)</td>
                    <td><label>
                        <textarea name="Beschreibung" id="Beschreibung" cols="45" rows="5"></textarea>
                        </label></td>
                </tr>
                <tr>
                    <td><img src="rechen-captcha.php"></td>
                    <td><input type="text" name="sicherheitscode" id="sicherheitscode" size="5"></td>
                </tr>
                <tr>
                    <td>&nbsp;</td>
                    <td><label>
                        <input type="submit" name="Senden" id="Senden" value="Bewerbung abschicken" />
                        </label></td>
                </tr>
            </table>
        </form>


Hier meine speichern.php:
Code: Alles auswählen
<?PHP
      $host = "localhost";
      $user = "XXXX";
      $password = "XXXX";
      $dbname = "XXXX";
      $tabelle ="XXXX";

$dbverbindung = mysql_connect ($host, $user, $password);

$dbanfrage = "INSERT into $tabelle values ('0', '".$_POST['Name']."', '".$_POST['Strasse']."', '".$_POST['PLZ']."', '".$_POST['Ort']."', '".$_POST['Tel']."', '".$_POST['Fax']."', '".$_POST['EMail']."', '".$_POST['EMailDomain']."', '".$_POST['URL']."', '".$_POST['URLTitel']."', '".$_POST['Beschreibung']."')";

if (mysql_db_query ($dbname, $dbanfrage, $dbverbindung)) {
print ("<h2>Eintrag erfolgreich!</h2><br /><br />");
} else {
print ("<h3>Es traten Probleme auf.</h3>");
}
mysql_close ($dbverbindung);

echo "<strong>Sie haben folgende Angaben gemacht:</strong><br /><br />";
echo '<table width="370" border="0" cellspacing="2px" cellpadding="2px">
        <tr>
            <td><strong>Firmenname:</strong></td>
            <td>'.$_POST[Name].'</td>
        </tr>
        <tr>
            <td><strong>Str:</strong></td>
            <td>'.$_POST[Strasse].'</td>
        </tr>
        <tr>
            <td><strong>PLZ:</strong></td>
            <td>'.$_POST[PLZ].'</td>
        </tr>
        <tr>
            <td><strong>Ort:</strong></td>
            <td>'.$_POST[Ort].'</td>
        </tr>
        <tr>
            <td><strong>Tel:</strong></td>
            <td>'.$_POST[Tel].'</td>
        </tr>
        <tr>
            <td><strong>Fax:</strong></td>
            <td>'.$_POST[Fax].'</td>
        </tr>
        <tr>
            <td><strong>E-Mail:</strong></td>
            <td>'.$_POST[EMail].'<img src="bilder/antispam.gif" alt="AntiSpam" width="14" height="13"/>'.$_POST[EMailDomain].'</td>
        </tr>
        <tr>
            <td><strong>URL:</strong></td>
            <td>'.$_POST[URL].'</td>
        </tr>
        <tr>
            <td><strong>Linktitel:</strong></td>
            <td>'.$_POST[URLTitel].'</td>
        </tr>
        <tr>
            <td><strong>Beschreibung:</strong></td>
            <td>'.$_POST[Beschreibung].'</td>
        </tr>
        <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
    </table>';
   echo "<strong>Nachdem wir Ihre Angaben auf Richtigkeit überprüft haben, wird Ihr Eintrag freigeschaltet.</strong>";
?>


Und hier der Code, von dem ich nicht weiß, wo er hin muss:
Code: Alles auswählen
<?php
session_start();
function encrypt($string, $key) {
$result = '';
for($i=0; $i<strlen($string); $i++) {
   $char = substr($string, $i, 1);
   $keychar = substr($key, ($i % strlen($key))-1, 1);
   $char = chr(ord($char)+ord($keychar));
   $result.=$char;
}
return base64_encode($result);
}
$sicherheits_eingabe = encrypt($_POST["sicherheitscode"], "29jfkd921");
$sicherheits_eingabe = str_replace("=", "", $sicherheits_eingabe);
if(isset($_SESSION['rechen_captcha_spam']) AND $sicherheits_eingabe == $_SESSION['rechen_captcha_spam']){
unset($_SESSION['rechen_captcha_spam']);

//
//
//Hier kommt das ursprüngliche Script hin.
//
//

}
?>

Die Lösung ist bestimmt einfach... ich komm aber einfach nicht drauf, hab schon alles Mögliche durchprobiert...

Im Voraus vielen vielen Dank für Eure Hilfe

Grüße, Alex
ixvor
 
Beiträge: 3
Registriert: 24.01.2008, 17:28

Beitragvon kleenerjanko » 25.01.2008, 00:55

hi, ich glaube hier antwortet dir keiner mehr...ich warte auch verbebens..am besten anders captcha suchen.... :(
kleenerjanko
 
Beiträge: 2
Registriert: 22.01.2008, 21:01

Beitragvon ixvor » 25.01.2008, 07:49

Hallo kleenerjanko,

schade... aber vielen Dank für Deine Antwort!


Grüße, Alex
ixvor
 
Beiträge: 3
Registriert: 24.01.2008, 17:28

Beitragvon Steef389 » 26.01.2008, 14:11

Soviel zum Thema, es gibt keine Antwort. Es gibt aber Leute, die sind nicht immer online.

@kleenerjanko: Ich hätte dir auch geholfen, allerdings sind Klassen meine Schwäche in PHP, also kann ich dir keine Hilfe geben


Code: Alles auswählen
<?PHP
session_start();
function encrypt($string, $key) {
$result = '';
for($i=0; $i<strlen($string); $i++) {
   $char = substr($string, $i, 1);
   $keychar = substr($key, ($i % strlen($key))-1, 1);
   $char = chr(ord($char)+ord($keychar));
   $result.=$char;
}
return base64_encode($result);
}
$sicherheits_eingabe = encrypt($_POST["sicherheitscode"], "29jfkd921");
$sicherheits_eingabe = str_replace("=", "", $sicherheits_eingabe);
if(isset($_SESSION['rechen_captcha_spam']) AND $sicherheits_eingabe == $_SESSION['rechen_captcha_spam']){
unset($_SESSION['rechen_captcha_spam']);

      $host = "localhost";
      $user = "XXXX";
      $password = "XXXX";
      $dbname = "XXXX";
      $tabelle ="XXXX";

$dbverbindung = mysql_connect ($host, $user, $password);

$dbanfrage = "INSERT into $tabelle values ('0', '".$_POST['Name']."', '".$_POST['Strasse']."', '".$_POST['PLZ']."', '".$_POST['Ort']."', '".$_POST['Tel']."', '".$_POST['Fax']."', '".$_POST['EMail']."', '".$_POST['EMailDomain']."', '".$_POST['URL']."', '".$_POST['URLTitel']."', '".$_POST['Beschreibung']."')";

if (mysql_db_query ($dbname, $dbanfrage, $dbverbindung)) {
print ("<h2>Eintrag erfolgreich!</h2><br /><br />");
} else {
print ("<h3>Es traten Probleme auf.</h3>");
}
mysql_close ($dbverbindung);

echo "<strong>Sie haben folgende Angaben gemacht:</strong><br /><br />";
echo '<table width="370" border="0" cellspacing="2px" cellpadding="2px">
        <tr>
            <td><strong>Firmenname:</strong></td>
            <td>'.$_POST[Name].'</td>
        </tr>
        <tr>
            <td><strong>Str:</strong></td>
            <td>'.$_POST[Strasse].'</td>
        </tr>
        <tr>
            <td><strong>PLZ:</strong></td>
            <td>'.$_POST[PLZ].'</td>
        </tr>
        <tr>
            <td><strong>Ort:</strong></td>
            <td>'.$_POST[Ort].'</td>
        </tr>
        <tr>
            <td><strong>Tel:</strong></td>
            <td>'.$_POST[Tel].'</td>
        </tr>
        <tr>
            <td><strong>Fax:</strong></td>
            <td>'.$_POST[Fax].'</td>
        </tr>
        <tr>
            <td><strong>E-Mail:</strong></td>
            <td>'.$_POST[EMail].'<img src="bilder/antispam.gif" alt="AntiSpam" width="14" height="13"/>'.$_POST[EMailDomain].'</td>
        </tr>
        <tr>
            <td><strong>URL:</strong></td>
            <td>'.$_POST[URL].'</td>
        </tr>
        <tr>
            <td><strong>Linktitel:</strong></td>
            <td>'.$_POST[URLTitel].'</td>
        </tr>
        <tr>
            <td><strong>Beschreibung:</strong></td>
            <td>'.$_POST[Beschreibung].'</td>
        </tr>
        <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
    </table>';
   echo "<strong>Nachdem wir Ihre Angaben auf Richtigkeit überprüft haben, wird Ihr Eintrag freigeschaltet.</strong>";
}
else
{
echo "Der Sicherheitscode war falsch.<br><a href=\"javascript:history.back()\">Zur&uuml;ck</a>";
}
?>

PS: Du definierst dbname, wählst diese aber nie aus.
Steef389
 
Beiträge: 57
Registriert: 20.06.2007, 20:31

Beitragvon ixvor » 30.01.2008, 11:53

Hallo Steef389,

vielen Dank für Deine super Hilfe!

Hätte noch eine Frage, möchte das Script includieren, gibt es eine Möglichkeit:

Code: Alles auswählen
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent


zu umgehen?


Nochmal vielen Dank & Grüße

Alex
ixvor
 
Beiträge: 3
Registriert: 24.01.2008, 17:28

Beitragvon Steef389 » 30.01.2008, 20:18

in der Datei, in die du diese Datei includierst, oben hinschreiben.

also:

Code: Alles auswählen
<?php
session_start();
/*

blablabla

*/
include("...");
/*

blablabla

*/
?>
Steef389
 
Beiträge: 57
Registriert: 20.06.2007, 20:31


Zurück zu Zahlen Captcha

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron