mikrocontroller.net

Forum: PC-Programmierung Benötige Hilfe bei Web App Erstellung


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: pierre (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Zusammen,

ich brauch mal wieder eure Unterstützung!
Es geht um folgendes, ich habe eine Web App erstellt.
Ziel ist es 1. das Datum einzugeben, 2. über ein Select Feld eine 
Station auszuwählen, 3. über Auswahlbuttons verschiedene Eingaben  zu 
machen.

Für das jeweilige Datum und die jeweilige Station sollen alle Eingaben 
der Auswahlbuttons in einer Datenbank gespeichert werden.

Zb Datum 17.06.2019 Station 3 (5x Auswahlbutton1, 3x Auswahlbutton3 usw)
Dann für jede Station bzw Datum eine neue Auswahl speichern.

Dazu habe ich bereits folgendes geschrieben (Html, PHP, SQL) :
Ich würde mich über euer Feedback und Hinweise freuen!
Vielen Dank im Voraus!

<html>

<?php
 include ("index.php");
 ?>

<head>
<title>Test WebApp</title></head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <html manifest="kaeltewagen.manifest">

<body>
<form method="post">
  <label>
     Datum:<br/>
    <input name="date" type="date" placeholder="Datum" style="height: 
50px; width: 100px;"/>
  </label>
  <label>
    <p> <form action="#"> </p>
    <label>Station:<br>
      <select name="top5" style="height: 50px; width: 100px;"/>
        <option>Station 1 </option>
        <option>Station 2 </option>
        <option>Station 3 </option>
        <option>Station 4 </option>
        <option>Station 5 </option>
      </select>

    </label>
  </form>
</main>
  <br/><br/><br/>
  <input type="button" name="button[Option1]" value="Auswahl 1" 
style="height: 50px; width: 100px;"/>
  <input type="button" name="button[Option2]" value="Auswahl 2" 
style="height: 50px; width: 100px;"/>
  <input type="button" name="button[Option3]" value="Auswahl 3" 
style="height: 50px; width: 100px;"/>
  <input type="button" name="button[Option4]" value="Auswahl 4" 
style="height: 50px; width: 100px;"/>
  <input type="button" name="button[Option5]" value="Auswahl 5" 
style="height: 50px; width: 100px;"/>

</form>



</body>
</html>

PHP Datei :

<?php
  $Option1   = +isset($_POST["button"]["Option1"]);
  $Option2   = +isset($_POST["button"]["Option2"]);
  $Option3  = +isset($_POST["button"]["Option3"]);
  $Option4  = +isset($_POST["button"]["Option4"]);
  $Option5  = +isset($_POST["button"]["Option5"]);

  $db = new PDO(
    'mysql:host=hostname;dbname=db',
    'username',
    'password'
  );

  if(($Option1 || $Option2 || $Option3 || $Option4 || $Option5 ) && 
@$_POST['name'] && @$_POST['date']){
    $sth = $dbh->prepare("INSERT INTO button_counter (name, datum, 
Option1, Option2, Option3, Option4, Option5) VALUES (?,?,?,?,?,?,?)");
    $sth->execute([$_POST['name'],$_POST['date'],$Option1,$Option2,$Option3, 
$Option4,$Option5]);
  }

  $counts = $db->execute("SELECT name, count(Option1), count(Option2), 
count(Option3), count(Option4), count(Option5) FROM button_counter GROUP 
BY name");
?>

SQL Datei :

CREATE TABLE button_counter (
  id INTEGER PRIMARY KEY,
  name VARCHAR(64) NOT NULL,
  datum DATE NOT NULL,
  savedate TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  Option1 BIT NOT NULL DEFAULT 0,
  Option2 BIT NOT NULL DEFAULT 0,
  Option3 BIT NOT NULL DEFAULT 0,
  Option4 BIT NOT NULL DEFAULT 0
  Option5 BIT NOT NULL DEFAULT 0
);

Autor: pierre (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da das ganze auch Offline möglich sein soll bzw die Eingabedaten auch im 
Offlinebetrieb gespeichert werden sollen, habe ich mir folgendes 
überlegt :

Manifest Datei :

CACHE MANIFEST
index.php
schema.sql
WebApp_Test.html

.htaccess Datei:

AddType text/cache-manifest .manifest

Die eingegebenen Daten (Datum, Station, jeweilige Auswahl) sollen 
gespeichert werden und dann in die Datenbank geladen werden sobald das 
Gerät (Tablet/Laptop/usw) online geht.

Alle Dateien (Html, SQL, PHP, Manifest Datei, .htacsess) sind im selben 
Ordner gespeichert.

Die php Datei ist in der Html Datei eingebunden, müssen die anderen 
Dateien auch in der Html Datei eingebunden werden?

Autor: Bettlerwabwehr 2.0 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
pierre schrieb:

Man kann auch auf dem Client die Daten ablegen, die sind dann nat. nur 
bei ihm verfügbar aber wenn das nur für eine Person sein soll ist das 
die einfachere Variante, brauchst kein Netz und kein MySQL.

Such mal nach:
Webstorage, sowas wie bessere Cookies, ohne Index.
IndexedDB oder WebSQL

WebSQL ist glaube ich inzw. veraltet sollte aber je nach Browser immer 
noch funktionieren.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.