Formulardaten in Datenbank eintragen

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

  • Formulardaten in Datenbank eintragen

    Hallo,
    erst einmal danke für die Aufnahme!
    Ich habe ein Problem,
    ich würde gerne Daten aus einem Formular in einer Datenbank eintragen.
    Beim Ausführen macht er keine Fehler aber in der Datenbank steht nichts drinne. Hier mal der Code:
    Formular code:
    PHP-Code:
    <?php
        
    include_once 'db.php';
        
    ?>

     <?php
        
    if(isset($_POST['save'])){
            
    $sql "INSERT INTO meine_kontakte (kennel, owner, adress, website, phone)
            VALUES ('"
    .$_POST["kennel"]."','".$_POST["owner"]."','".$_POST["adress"]."','".$_POST["website"]."','".$_POST["phone"]."')";
        }

        
    ?>


     <?php

    //Formular zur Dateneingabe
    echo'<h3>Daten eintragen</h3>

    <form method="post">
      Kennel: <input type="text" name="kennel" size="30"><br>
      Owner: <input type="text" name="owner" size="30"><br>
      Adress: <input type="text" name="adress" size="30"><br>
      Website: <input type="text" name="website" size="30"><br>
      Phone: <input type="text" name="phone" size="30"><br>
      <input type="submit" value="Eintragen!">
    </form>'

    ?>
    dann der db.php code:
    PHP-Code:
    <?php
    $mysqli 
    = new mysqli("meine.mysql""meine_de_kontakte""backdoor""meine_kontakte");

    /* check connection */
    if (mysqli_connect_errno()) {
        
    printf("Connect failed: %s\n"mysqli_connect_error());
        exit();
    }
    ?>
    Danke im voraus für eure Hilfe !!!!!
    PS: Bin auch neu in Sachen php/mysql - sorry !!!

  • #2
    Du schreibst das SQL-Statement in eine Variable. Ich sehe aber nirgends, dass du die auch an die Datenbank schickst.

    Gruß
    Peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Habe das jetzt umgestellt die datenbank01.php:
      PHP-Code:
      <?php
      $kennel 
      htmlspecialchars($_POST["kennel"]);
      $owner htmlspecialchars($_POST["owner"]);
      $adress htmlspecialchars($_POST["adress"]);
      $website htmlspecialchars($_POST["website"]);
      $phone htmlspecialchars($_POST["phone"]);

      $datenbank = new mysqli (
      meine.de.mysql,
      meine_kontakte,
      backdoor,
      meine_kontakte
      );

      if(
      $datenbank -> query("INSERT INTO kontakte (kennel, owner, adress, website, phone) VALUES ("'$kennel'"."'$owner'"."'$adress'"."'$website'"."'$phone'") ")) {
      echo 
      "Erfolgreich in die Datenbank geschrieben!";
      } else {
      echo 
      "Es konnte nicht in die Datenbank geschrieben werden!";
      }


      $datenbank -> close();
      ?>
      jetzt kommt folgender Fehler:
      Parse error: syntax error, unexpected ''$kennel'' (T_CONSTANT_ENCAPSED_STRING), expecting ',' or ')' in /customers/8/1/b/og-elbbruecke.de/httpd.www/ajovaska.de/catalina.zone/blog/datenbank01.php on line 15

      Kommentar


      • #4
        Du kannst Strings nicht einfach so irgendwo hinschreiben, du musst die untereinander verknüpfen:

        https://www.php.net/manual/de/langua...ors.string.php

        Oder nimm halt einfach Prepared Statements, ist sowieso sicherer

        https://www.php.net/manual/de/mysqli...statements.php

        Kommentar


        • #5
          Formulardaten in Datenbank eintragen

          Ich habe da auch ein kleines Problemchen. Ich versuche aus einer Formularzeile einen bestimmten Datensatz in eine Tabelle einzutragen. Neu für mich ist, dass das Formular anders ist als ich es bisher kenne.

          PHP-Code:
                        <div class="col-md-9">
          <?php
          $pdo 
          = new PDO('mysql:host=localhost;dbname=prkng....''prkng1...''...');
          ?>
                  
                            <input id="url" name="url" class="form-control" type="text" placeholder="Bitte geben Sie die ...-URL zum Herunterladen ein">                  
          <?php 
          $statement 
          $pdo->prepare("INSERT INTO video (url) VALUES (:url)");
          $statement->execute(array('url'));   
          ?>             
                        </div>
                        <div class="col-md-3"> 
                            <button id="videodownload" class="btn btn-block btn-color" data-loading-text="<i class='fa fa-spinner fa-spin '></i> Processing">Download</button>             
                        </div>
          Datenbankverbindung selbst ist getestet und funktioniert. Im Prinzip soll jetzt einfach die Url in der Datenbank mit gespeichert werden. Eigentlich recht simple dachte ich. Musste aber feststellen dass sich gleich zwei Fragen auftuen. POST oder GET und dann wie ?

          Über Tipps wäre ich Dankbar.

          Kommentar


          • #6
            Erstmal das Datenbankgedöns nicht einfach mitten ins HTML schreiben, das ist fehleranfällig und das will auch keiner lesen. EVA-Prinzip beachten

            https://de.wikipedia.org/wiki/EVA-Prinzip

            GET oder POST kannst du selber bestimmen über das "method" Attribut im Formular

            https://developer.mozilla.org/de/doc...L/Element/form

            Und PHP macht dann daraus die Arrays $_GET bzw. $_POST, die kannst du dir mit var_dump($_GET, $_POST) anzeigen lassen. Damit bedienst du dann das Array in execute().

            Kommentar


            • #7
              Zitat von chorn Beitrag anzeigen
              Erstmal das Datenbankgedöns nicht einfach mitten ins HTML schreiben, das ist fehleranfällig und das will auch keiner lesen. EVA-Prinzip beachten

              https://de.wikipedia.org/wiki/EVA-Prinzip

              GET oder POST kannst du selber bestimmen über das "method" Attribut im Formular

              https://developer.mozilla.org/de/doc...L/Element/form

              Und PHP macht dann daraus die Arrays $_GET bzw. $_POST, die kannst du dir mit var_dump($_GET, $_POST) anzeigen lassen. Damit bedienst du dann das Array in execute().

              Das ist es gerade was neu für mich ist. Es gibt kein <form action ...
              Im Suchfeld wird ein Link eingegeben, der die Auflösung direkt bringt. Im Prinzip Ajax von der Technik her.
              PHP-Code:
              <body>
                <div id = "livebg">
                <!-- navbar -->
                <nav class="navbar">
                  <!-- container-fluid -->
                  <div class="container-fluid">
                    <!-- navbar-header -->
                    <div class="navbar-header">
                      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>                        
                      </button>
                      <div id = "logo"><img src = "downvid.png" alt="Logo downvid.de"/></div>
                    </div>
                    <!-- navbar-header end. -->
                    
                    <div style = "position: absolute; width: 100%;"><div align = "center" id = "swrap">
              <!-- AddToAny BEGIN -->
              <div>
              <a href="http://www.facebook.com/sharer.php?u=http%3A%2F%2Fwww.downvid.de&title=Facebook%20Video%20Downloader&picture=downvid.png" target="blank" title="auf Facebook teilen"><img src="img/facebook.svg" width="32" height="32" alt="facebook" /></a>
              <a href="https://twitter.com/share?url=http%3A%2F%2Fwww.downvid.de&text=Facebook%20Video%20Downloader" target="blank" title="auf Twitter teilen"><img src="img/twitter.svg" width="32" height="32" alt="twitter" /></a>
              </div>
              <!-- AddToAny END --></div></div>
                    
                    <!-- navbar-collapse -->
                    <div class="collapse navbar-collapse" id="myNavbar">
                      <!-- navbar-nav -->      
                      <ul class="nav navbar-nav navbar-right">
                        <!-- Trigger the modal with a button -->
                        <li><a href="javascript:void(0)" data-toggle="modal" data-target="#myModal">FAQ</a></li>
                        <li><a href="http://www.tarifbasar.de" target="_blank">Tarife</a></li>
                        <li><a href="https://scripte-download.com" target="_blank">Scripts</a></li>
                      </ul>
                      <!-- navbar-nav end. -->
                    </div>
                    <!-- navbar-collapse end. -->
                  </div>
                  <!-- container-fluid end. -->
                </nav>
                <!-- nvabar end. -->

                <!-- container-fluid -->
                <div class="container-fluid">
                  <!-- row -->
                  <div class="row">
                    <!-- col -->
                    <div class="col-md-8 col-md-offset-2">
                      <!-- header -->
                      <div class="header text-center" style = "margin-bottom: 0px!important;">
                        <h1>Facebook Video Downloader Online </h1>
                        <h2>Geben Sie einfach Ihre Video-URL zum Herunterladen ein</h2>
                         <!-- advertisement -->
                        <div class = 'ad'><?php include("ad.php"); ?></div>
                      <!-- advertisement end. -->
                      </div>
                      <!-- header end. -->
                    </div>
                    <!-- col end. -->          
                  </div>
                  <!-- row end.--> 
                  
                  <!-- row -->
                  <div class="row">
                    <!-- col -->
                    <div class="col-md-8 col-md-offset-2">
                      <!-- card -->
                      <div class="card">
                        <!-- body -->
                        <div class="body">
                          <!-- row -->
                          <div class="row" >
                            <!-- col -->
                            <div class="col-md-9">
              <?php
              $pdo 
              = new PDO('mysql:host=localhost;dbname=prkng...''prkng...''passwort');
              if (isset(
              $_POST["url"]))         
                  
              $url $db->EscapeString($_POST["url"]); 
              else 
              $url "";
              ?>

                                <input id="url" name="url" class="form-control" type="text" placeholder="Bitte geben Sie die Facebook-URL zum Herunterladen ein">                  
              <?php 
              $statement 
              $pdo->prepare("INSERT INTO video (url) VALUES (:url)");
              $statement->execute(array('url'));   
              ?>             
                            </div>
                            <div class="col-md-3"> 
                                <button id="videodownload" class="btn btn-block btn-color" data-loading-text="<i class='fa fa-spinner fa-spin '></i> Processing">Download</button>             
                            </div>
                            <!-- col end. -->
                          </div>
                          <!-- row end.-->
                        </div>
                        <!-- body end. -->
                      </div>
                      <!-- card end. --> 
                    </div>
                    <!-- col end.--> 
                  </div>
                  <!-- row end.-->

                  <!-- row -->
                  <div class="row">
                    <!-- col -->
                    <div class="col-md-8 col-md-offset-2">
                      <!-- result -->
                      <div class="result">
                        <!-- card -->
                        <div class="card">
                          <!-- body -->
                          <div class="body">
                            <!-- row -->
                            <div class="row">
                              <!-- col -->
                              <div class="col-md-6">
                                <!-- video -->
                                <video id="video" height="240" autoplay="autoplay" loop="loop" muted="muted" controls>
                                  <source src="movie.mp4" type="video/mp4" >
                                  Ihr Browser unterstützt das Video-Tag nicht.
                                </video>
                                <!-- video end.-->
                              </div>
                              <div class="col-md-6">
                                <h4 id="title">-</h4>                    
                                <h5 id="source">.</h5>
                                <!-- form-group -->
                                <div class="form-group">
                                  <div id="sd"></div>             
                                </div>
                                <div class="form-group">
                                  <div id="hd"></div>             
                                </div>
                                <!-- form-group end. -->                 
                              </div>
                              <!-- col end. -->
                            </div>
                            <!-- row -->
                          </div>
                          <!-- body end. -->
                        </div>
                        <!-- card end. -->
                      </div>
                      <!-- result end. -->
                    </div>
                    <!-- col end. -->
                  </div>
                  <!-- row end.-->

                  <!-- Modal -->
                  <div id="myModal" class="modal fade" role="dialog">
                    <div class="modal-dialog">

                      <!-- Modal content-->
                      <div class="modal-content">
                        <div class="modal-header">
                          <button type="button" class="close" data-dismiss="modal">&times;</button>
                          <h4 class="modal-title">FAQ</h4>
                        </div>
                        <div class="modal-body">
                          URLs sehen folgendermaßen aus: (file: und ftp: URLs sind synonym.)
                          <ul>
                            <li>https://www.facebook.com/rapidminer/videos/642000499331862/</li>              
                            <li>https://www.facebook.com/beyounick182/videos/1960700404198396/</li>           
                          </ul>
                          wenn der Download-Link nicht funktioniert
                          <ul>
                            <li>Klicken Sie auf einen Link (Download SD / Download HD), um ihn herunterzuladen.</li>              
                            <li>Klicken Sie mit der rechten Maustaste auf das Video und klicken Sie auf <b> Video speichern unter </ b>, um die Datei herunterzuladen.</li>           
                          </ul>    
              </div>       
                        </div>          
                      </div>

                    </div>
                  </div>

                  <!-- snackbar-success -->
                  <div id="snackbar-success">Dein Video kann jetzt heruntergeladen werden.</div>
                  <!-- snackbar-success end. -->
                  <!-- snackbar-error -->
                  <div id="snackbar-error">Fehler beim Abrufen des Download-Links für die URL. Bitte versuchen Sie es später noch einmal!</div>
                  <!-- snackbar-error end. -->
                  <!-- footer -->
                  <div class="footer "> 
              <a style = "color:white;" href = "javascript:popup(1)">Impressum</a> | <a style = "color:white;"  href = "javascript:popup(2)">Datenschutz</a> | <a style = "color:white;"  href = "partner.php">wir bei ...</a>
                    <p>©2019 - Downvid.de </p>
                          
                  </div>
                  <!-- footer end. -->
              <div id="pWrap" style="display: none;">
                          <div style="text-align: right;position: absolute;width: 100%;"><a style="margin: 20px;display: block;color: white;" href="javascript:popup()">Close</a></div>
                          <div class="popup" style="display: none;"><?php include('impress.php'); ?></div>
                          <div class="popup" style="display: none;"><?php include('privacy.php'); ?></div>
              </div>
                </div>
                <!-- container-fluid end. -->

                <!-- jQuery library -->
                <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

                <!-- Latest compiled JavaScript -->
                <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 

                <script src="js/custom.js"></script>
                </div>                   
              </body>
              so sieht es derzeit komplett aus. Mein Ansatz war Ursprünglich das ich den Eintrag erfolgen lasse, wenn der
              PHP-Code:
              <button id="videodownload" class="btn btn-block btn-color"  data-loading-text="<i class='fa fa-spinner fa-spin '></i>  Processing">Download</button
              geklickt wurde. Mit GET und POST hab versucht und funktioniert so nicht.

              stehe gerade echt bisl auf dem Schlauch.

              Kommentar


              • #8
                Was für AJAX? In deinem Beispiel gibt es kein Javascript und der Button wird auch nicht weiter verwendet. Ohne Link und ohne Formular wirst du dann auch nichts verschicken können. "funktioniert nicht" ist keine Fehlerbeschreibung, was soll denn irgendwer hier damit anfangen?

                Kommentar


                • #9
                  Zitat von chorn Beitrag anzeigen
                  Was für AJAX? In deinem Beispiel gibt es kein Javascript und der Button wird auch nicht weiter verwendet. Ohne Link und ohne Formular wirst du dann auch nichts verschicken können. "funktioniert nicht" ist keine Fehlerbeschreibung, was soll denn irgendwer hier damit anfangen?
                  ich habe den Quellcode doch gepostet das ist javascript unten drin kannst gerne mal testen das das geht

                  mfg
                  Zuletzt geändert von admin; 12.12.2019, 10:02.

                  Kommentar

                  Lädt...
                  X