• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

<a><button> geht nicht

kann es sein, dass man neben den Berechtigungen der Ordner und Dateien auch noch bei dem Root Server was einstellen muss (über Putty)?
 
Werbung:
Nein, eigentlich nicht. Aber du kannst per putty mal auf den Server gehen und dir darüber nochmal die Rechte ansehen. Denn wenn du das z.B. per FTP-Programm gemacht hast, habe ich es schon erlebt, dass die Rechte trotzdem nicht gestimmt haben, weil der Owner schon falsch war.
 
Und nochmal die Frage: Warum speicherst du die Daten nicht in eine Datenbank?
 
Werbung:
Ich habe es nun mit einer MYSQL Datenbank gemacht, jedoch werden die Daten nicht gespeichert. Ich bekomme weder ein Erfolg noch ein Fehler, wenn ich dem Script sage, dass es beim connecten und beim senden überprüfen soll, ob es erfolgreich war. Woran kann das liegen?
Ich habe eigentlich alles so wie hier beschrieben gemacht:
https://www.w3schools.com/Php/php_mysql_connect.asp
https://www.w3schools.com/Php/php_mysql_insert.asp
Code kommt leider erst später, da ich gerade unterwegs bin. Jedoch habe ich eigentlich fast schon Copy & Paste bei den oben genannten Links gemacht ^^
PS: Datenbank habe ich auch aufrufen lassen (obwohl es nicht direkt in den Tutorials steht)
 
@m.scatello
Sorry, dass es erst jetzt kommt (hatte zuvor keine Zeit):
Code:
<?php
    $servername = "localhost";
    $username = "root";
    $password = "X4s93LYZ9e";
    $dbname = "Spenden";
    $conn = new mysqli($servername, $username, $password, $dbname);
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }
    $name = $_POST['name'];
    $email = $_POST['email'];
    $steamname = $_POST['steamname'];
    $betrag = $_POST['betrag'];
    $paycode = $_POST['paysafecard'];
    $steamcode = $_POST['steamcard'];
    if (isset($_POST['zahlmethode']))
    {
        switch ($_POST['zahlmethode'])
        {
            case "paysafecard":
                $sql = "INSERT INTO Transaktionen (Name, E-Mail, Steam-Name, Betrag, Code, Bezahlungsart)
                    VALUES ('".$name."', '".$email."', '".$steamname."', '".$betrag."', '".$paycode."', 'PaySafeCard')";
                if ($conn->query($sql) === TRUE) {
                   
                }
                break;
            case "steamcard":
                $sql = "INSERT INTO Transaktionen (Name, E-Mail, Steam-Name, Betrag, Code, Bezahlungsart)
                    VALUES ('".$name."', '".$email."', '".$steamname."', '".$betrag."', '".$steamcode."', 'SteamCard')";
                if ($conn->query($sql) === TRUE) {
                   
                }
                break;
            default:
                $sql = "INSERT INTO Transaktionen (Name, E-Mail, Steam-Name, Betrag, Code, Bezahlungsart)
                    VALUES ('".$name."', '".$email."', '".$steamname."', '".$betrag."', '', 'PayPal')";
                if ($conn->query($sql) === TRUE) {
                   
                }
                break;
        }
    }
?>
 
Werbung:
Ungetestet:
PHP:
<?php
    $servername = "localhost";
    $username = "root";
    $password = "X4s93LYZ9e";
    $dbname = "Spenden";
    $conn = new mysqli($servername, $username, $password, $dbname);

    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }

    if (isset($_POST['name']))
    {
       $name      = $conn->real_escape_string($_POST['name']);
       $email     = $conn->real_escape_string($_POST['email']);
       $steamname = $conn->real_escape_string($_POST['steamname']);
       $betrag    = $conn->real_escape_string($_POST['betrag']);
       $paycode   = $conn->real_escape_string($_POST['paysafecard']);
       $steamcode = $conn->real_escape_string($_POST['steamcard']);
     
       if (isset($_POST['zahlmethode']))
       {
           $sql = "INSERT
                    INTO
                       `Transaktionen`
                       (`Name`,
                        `E-Mail`,
                        `Steam-Name`,
                        `Betrag`,
                        `Code`,
                        `Bezahlungsart`)";
                       
           switch ($_POST['zahlmethode'])
           {
              case "paysafecard":
                   $sql .= " VALUES ('$name', '$email', '$steamname', '$betrag', '$paycode', 'PaySafeCard')";
                   break;
              case "steamcard":
                   $sql .= "VALUES ('$name', '$email', '$steamname', '$betrag', '$steamcode', 'SteamCard')";
                   break;
              default:
                   $sql .= " VALUES ('$name', '$email', '$steamname', '$betrag', '', 'PayPal')";
                   break;
           }
       
           $conn->query($sql)
             or die ("MySQL-Error: " . $conn->error);
      }
      else
        die("Zahlmethode nicht vorhanden");
    }
    else
        die("Name nicht vorhanden");
?>
 
Leider wird mir da trotzdem kein Fehler ausgegeben und auch nichts in der DB gespeichert. Ich habe den Code von m.scatello genommen
 
Werbung:
Och nöööö, dann debugge doch mal richtig! Das kann doch nicht so schwer sein!
PHP:
<?php
    error_reporting(E_ALL);
    ini_set('display_errors', true);
   
    echo 'Starting....<br>';
   
    $servername = "localhost";
    $username = "root";
    $password = "X4s93LYZ9e";
    $dbname = "Spenden";

    $conn = new mysqli($servername, $username, $password, $dbname);

    if ($conn->connect_error)
        die("Connection failed: " . $conn->connect_error);

    echo 'Connection ok<br>';
   
    if (isset($_POST['name']))
    {
       echo '$_POST[name] ok<br>';
       
       $name      = $conn->real_escape_string($_POST['name']);
       $email     = $conn->real_escape_string($_POST['email']);
       $steamname = $conn->real_escape_string($_POST['steamname']);
       $betrag    = $conn->real_escape_string($_POST['betrag']);
       $paycode   = $conn->real_escape_string($_POST['paysafecard']);
       $steamcode = $conn->real_escape_string($_POST['steamcard']);
       
       echo 'Values = ' . $name . ', ' . $email . ', ' . $steamname . ', ' . $betrag . ', ' . $paycode . ', ' . $steamcode  . '<br>';
     
       if (isset($_POST['zahlmethode']))
       {
           echo '$_POST[zahlmethode] ok<br>';
           
           $sql = "INSERT
                   INTO
                      `Transaktionen`
                      (`Name`,
                       `E-Mail`,
                       `Steam-Name`,
                       `Betrag`,
                       `Code`,
                       `Bezahlungsart`)";
                       
           switch ($_POST['zahlmethode'])
           {
              case "paysafecard":
                   $sql .= " VALUES ('$name', '$email', '$steamname', '$betrag', '$paycode', 'PaySafeCard')";
                   break;
              case "steamcard":
                   $sql .= "VALUES ('$name', '$email', '$steamname', '$betrag', '$steamcode', 'SteamCard')";
                   break;
              default:
                   $sql .= " VALUES ('$name', '$email', '$steamname', '$betrag', '', 'PayPal')";
                   break;
           }
           
           echo '$sql = ' . $sql . '<br>';
       
           $conn->query($sql)
             or die ("MySQL-Error: " . $conn->error);
             
           echo 'Data inserted';
      }
      else
        die("Zahlmethode nicht vorhanden");
    }
    else
        die("Name nicht vorhanden");
?>
 
Zurück
Oben