Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo an alle,

ich bin relativ neu in diesem Forum, sonst immer der stille Mitleser. Jetzt komme ich aber mit einem Fehler auf euch zu wo ich echt nicht weiterkomme, da ich den Fehler nicht verstehe bzw. vielleicht auch einfach nicht sehe.

Ich habe einen Ubuntu Server mit folgenden Packages grundinstalliert: mySQL / PHP-FPM7.3 / apache2 / ufw.

Mein Ziel ist es folgendes PHP Script:

<?php

$dbname="quest";
$dbhost="localhost";
$dbuser="******";
$dbpass="******";
$dbconnection=@mysqli_connect($dbhost, $dbuser, $dbpass);

mysqli_select_db($dbconnection,$dbname);

$cate=$_POST['cate'];
$quest=$_POST['quest'];
$answer=$_POST['answer'];
$time=$_POST['time'];

//if(isset($_POST['cate']) AND ($_POST['quest']) AND ($_POST['answer'])
{
mysqli_query($dbconnection, "INSERT INTO question(cate,quest,answer,time) VALUES('$cate','$quest','$answer','$time')");
}

date_default_timezone_set("Europe/Berlin");
$timestamp = time();

$datum= date("d.m.Y", $timestamp)

?>


<html>
<body>
<form action="kata.php" method="POST">
<select name="Kategorien">
 <option>Kategorie A</option>
 <option>Kategorie B</option>
 <option>Kategorie C</option>
<tr>
<td><input type="Text" size="60" name="cate" value="Kategorie" maxlength="60"></td>
</tr>
<tr>
<td><input type="Text" size="60" name="quest" value="Frage" maxlength="60"></td>
</tr>
<tr>
<td><input type="Text" size="60" name="answer" value="Antwort" maxlength="60"></td>
</tr>
<tr>
<td><input type="datetime" size="60" name="time" value="<?php echo $datum;?>"  maxlength="60"></td>
</tr>
<input type="Submit" value="Senden">
</form>
</body>
</html>

in folgende mySQL Tabelle zu übertragen:

 drop table if exists question;

create table question(
questionid int primary key auto_increment,
cate varchar(60),
quest varchar(60),
answer varchar(60),
time varchar(60)
);

 

Auf meinem Windows PC mit XAMPP Umgebung funktioniert es einwandfrei.

Auf dem Webserver bekomme ich die HTML-Eingabe"maske" aber die Ausgabe in die Datenbank funktioniert nicht.

 

Kann mir jemand vielleicht weiterhelfen?

Viele Grüße,

TechSteck

vor 5 Minuten schrieb TechSteck:

$dbname="quest"; $dbhost="localhost"; $dbuser="******"; $dbpass="******";

Das hat sicherlich hiermit zu tun.

Läuft da eine MySql-Server? Stimmen die Credentials? Existiert die Datenbank? Stimmt der Port? (default ist 3306, wenn ich mich nicht irre).

vor 2 Stunden schrieb MartinSt:

Warum keine Prepared Statements?

...oder wenigstens PDO, statt auf das gefühlt uralte MySQLi zu bauen. Das verleitet doch bloß dazu, prozeduralen Code zu schreiben.

Bonus: Wenn doch mal PostgreSQL statt MySQL verwendet wird.

-----

Hast du auf dem Webserver alle benötigten Sachen aktiviert?

Und am besten auch das error_reporting einfach mal anstellen:

error_reporting(E_ALL);

https://www.php.net/manual/de/function.error-reporting.php

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.