Miért nem tudok form-ból adatot bevinni az adatbázisba?
Egy egyszerű tanulással kapcsolatos honlapot szeretnék készíteni (az adatokat a böngészőből, form segítségével vinném be).
Az a problémám, hogy nem akarja felvinni az adatokat. Mitől lehet? Az adatbázishoz szépen csatlakozik, ami benne van a táblában, azt szépen megjeleníteni.
A forráskód az első hozzászólásban lesz.
Az adatbázis felépítése:
Dictionary tábla: id (int 4, ai), english (varchar 150, unique), hungarian (varchar 150), date (date)
<form class='form-horizontal' method='POST' action='".$_SERVER["PHP_SELF"]."?r=new_word' >
<div class='form-group'>
<label for='eng' class='col-sm-2 control-label'>English word</label>
<div class='col-sm-10'>
<input type='text' class='form-control' name='eng' id='eng' placeholder='Put to/to be before the words if needed' required>
</div>
</div>
<div class='form-group'>
<label for='hun' class='col-sm-2 control-label'>Hungarian word</label>
<div class='col-sm-10'>
<input type='text' class='form-control' name='hun' id='hun' required>
</div>
</div>
<div class='form-group'>
<div class='col-sm-offset-2 col-sm-10'>
<input type='submit' name='submit' class='btn btn-default' value='Add!'>
</div>
</div>
</form>";
if(isset($_POST["submit"])){
$kapcsolat->query("
INSERT INTO dictionary
(english, hungarian, date)
VALUES
(". $_POST['eng'] .", ". $_POST['hun'] .", CURDATE())
");
Egyébként szerintem az összefűzéssel van a baj, mert ha a $_POST['eng'] értéke Tengor, akkor a script valami ilyesmi: (Tengor,...) holott helyesen ('Tengor',...) lenne.
Már csak azért is célszerű a PS-t használni + a ellenőrizni a futás eredményét és a hibát megjeleníteni / logolni.
Köszönöm szépen! Most már működik!
Így viszont előjött egy másik hiba. Vissza szeretnék jelezni a felhasználónak, hogy sikerült-e elmenteni az adatbázisba a szöveget. Ezt írtam, de ha sikeres a felvitel, akkor is az else ág fut le... Ebben mi lehet a hiba? :)
if(isset($_POST['submit'])){
if ($kapcsolat->query === TRUE){
$content .= "<div class='alert alert-success' role='alert'>I put this word into the database! Hurray!</div>";
}
else{
$content .= "<div class='alert alert-danger' role='alert'>I can't put this word into the dictionary! It may have already been there!</div>";
}
}
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!