Ankündigung

Einklappen
Keine Ankündigung bisher.

Abspeichern funktioniert nicht

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #31
    Zitat von co worker Beitrag anzeigen
    Ich weiß nicht, wie ma nmit phpmyadmin den code vom erstellen der Tabelle bekommt, aber das müsste auch schon weiterhelfen.
    Indem du die Tabellenstruktur als SQL-Code exportierst.

    Aber vergiss doch mal das Klickibunti-Zeug. Stell dir vor es gibt kein phpMyAdmin.

    Kommentar


    • #32
      Code:
      -- phpMyAdmin SQL Dump
      -- version 4.7.4
      -- https://www.phpmyadmin.net/
      --
      -- Host: 127.0.0.1
      -- Erstellungszeit: 13. Feb 2018 um 11:05
      -- Server-Version: 10.1.30-MariaDB
      -- PHP-Version: 7.2.1
      
      SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
      SET AUTOCOMMIT = 0;
      START TRANSACTION;
      SET time_zone = "+00:00";
      
      
      /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
      /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
      /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
      /*!40101 SET NAMES utf8mb4 */;
      
      --
      -- Datenbank: `cook`
      --
      
      -- --------------------------------------------------------
      
      --
      -- Tabellenstruktur für Tabelle `daten`
      --
      
      CREATE TABLE `daten` (
        `ID` int(255) NOT NULL,
        `Firstname` varchar(255) NOT NULL,
        `Lastname` varchar(255) NOT NULL,
        `Username` varchar(255) NOT NULL,
        `Email` varchar(255) NOT NULL,
        `Password` varchar(255) NOT NULL,
        `Registered` datetime NOT NULL,
        `Last_Login` datetime NOT NULL,
        `Loggedin` int(11) NOT NULL DEFAULT '0',
        `Email_Confirmed` int(11) NOT NULL DEFAULT '0',
        `number_ingredients` int(11) NOT NULL DEFAULT '0',
        `number_recipes` int(11) NOT NULL DEFAULT '0',
        `PB` varchar(255) NOT NULL DEFAULT 'Standard.png',
        `Color` varchar(6) NOT NULL DEFAULT '000000'
      ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
      
      --
      -- Daten für Tabelle `daten`
      --
      
      INSERT INTO `daten` (`ID`, `Firstname`, `Lastname`, `Username`, `Email`, `Password`, `Registered`, `Last_Login`, `Loggedin`, `Email_Confirmed`, `number_ingredients`, `number_recipes`, `PB`, `Color`) VALUES
      (1, 'example', 'example', 'example', 'example@domain.com', 'example', '2018-02-11 07:43:16', '2018-02-11 07:43:16', 0, 0, 0, 0, 'Standard.png', '000000'),
      (2, 'sdfas', 'asfdaf', 'fdf', 'afda@lol.at', '3c5c7ef80bf', '2018-02-12 20:41:38', '2018-02-12 20:41:38', 0, 0, 0, 0, 'Standard.png', '000000');
      
      --
      -- Indizes der exportierten Tabellen
      --
      
      --
      -- Indizes für die Tabelle `daten`
      --
      ALTER TABLE `daten`
        ADD PRIMARY KEY (`ID`);
      
      --
      -- AUTO_INCREMENT für exportierte Tabellen
      --
      
      --
      -- AUTO_INCREMENT für Tabelle `daten`
      --
      ALTER TABLE `daten`
        MODIFY `ID` int(255) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;
      COMMIT;
      
      /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
      /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
      /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

      Kommentar


      • #33
        PHP-Code:
        PHP-Code:
        <?php

            mysqli_report
        (MYSQLI_REPORT_ALL);

            
        $db = new mysqli("localhost","cook-user","123","cook");

            if(
        $db->connect_error)
                echo 
        "<b>Critical Error: </b> $db->connect_error";

            if(isset(
        $_POST['absenden'])) {
                
        $firstname $_POST['firstname'];
                
        $lastname $_POST['lastname'];

                
        $username $_POST['username'];
                
        $email $_POST['email'];
                
        $password $_POST['password'];

                
        $search_user $db->query("SELECT ID FROM daten WHERE username = '$username'");

                if(
        $search_user->num_rows == 0) {
                    if(
        strlen($username) <= 25)
                    
        $password md5($password);
                    
        $db->prepare("INSERT INTO daten (Firstname,Lastname,Username,Email,Password,Registered,Last_Login) VALUES ('$firstname','$lastname','$username','$email','$password',NOW(),NOW())");
                    echo 
        $insert->error;
                    echo 
        "Your Account was created successfully.";

                }
                    else
                        echo 
        "This username is already used.";
            }


        ?>
        Fehler:
        Fatal error: Uncaught mysqli_sql_exception: No index used in query/prepared statement SELECT ID FROM daten WHERE username = 'example' in C:\Xampp\htdocs\Programme\Cook\action_register.php :18 Stack trace: #0 C:\Xampp\htdocs\Programme\Cook\action_register.php (1: mysqli->query('SELECT ID FROM ...') #1 {main} thrown in C:\Xampp\htdocs\Programme\Cook\action_register.php on line 18

        Kommentar


        • #34
          Mach mal ein
          PHP-Code:
          //mysqli_report(MYSQLI_REPORT_ALL); 
          oder ganz löschen.

          Mysqli_report solltest du nur einsetzen, wenn dir klar ist, was dort als Ergebnis mitgeteilt wird. ansonsten lasse es weg und fange Fehler ab, wie es im Handbuch empfohlen wird.

          Ausserdem soltest du von aussen ankommende Parameter nicht unmaskiert in einer DB Afrage verwenden, verwende zumindest mysqli_real_escape_string.

          Kommentar


          • #35
            Datei1.php:
            PHP-Code:
            <?php

              
            if(isset($_POST['profile'])) {
                
            SESSION_START();
                
            $_SESSION['id'] = $ID;
                
            header('Location: Profile.php');
              }
            ?>
            Profile.php:
            PHP-Code:
            <?php

              SESSION_START
            ();
              if( 
            $_SESSION['id'] == "" ) {
                
            header('Location: username.html');
              }
                else {
                  
            $id $_SESSION['id'];
                  
            $_SESSION['id'] = "";
                }
            ?>
            Irgendwie werden die ID nicht übergeben...

            Kommentar


            • #36
              Wo kommt denn $ID her???

              Und bitte selber mal aktiver werden mit https://php-de.github.io/jumpto/leitfaden/
              Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

              Kommentar


              • #37
                $ID hat einen wert.

                Kommentar


                • #38
                  Tja, dann mal richtig debuggen
                  Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

                  Kommentar

                  Lädt...
                  X