witam, mam problem z dodaniem do bazy rekordu w którym występuje zawartość pola tekstowego wysłana metodą POST.
Próbowałem na kilka sposobów, jednak zawsze były jakieś błędy.
Poniżej przedstawiam kod zawierający również dane do połączenia z testową bazą danych.
z uwagi na to, że “echo” również nie wyświetla zmiennej to zakładam że PHP źle interpretuje ową zmienną, ale co z tym zrobić to już nie mam pomysłu. Czemu zmienaa która zawsze jest INT-em działa ok a zmienna będąca łańcuchem już nie?
<form action="" method="POST">
<input type="submit" value="zapisz" />
<select name="opcja">
<option value="1">opcja1</option>
<option value="2">opcja2</option>
<option value="3">opcja3</option>
</select>
<textarea name='notatka' cols="30" rows="10"></textarea>
</form>
<?php
try {
$pdo = new PDO('mysql:host=mysql.hostinger.pl;dbname=u353370355_2', 'u353370355_2', 'zaq12wsx');
}
catch (PDOException $e) {
echo 'Connection failed: ' . $e -> getMessage();
}
$qr = "SELECT * FROM tabela";
$stmt = $pdo -> query($qr);
if ($stmt -> rowCount() > 0) {
while ($resource = $stmt -> fetch(PDO::FETCH_ASSOC)) {
foreach ($resource as $key => $value) echo $key . ': ' . $value . '<br/>';
}
} else echo 'Zapytanie nie zwróciło wyników';
$qr = "INSERT INTO tabela values(null,'$_PST[notatka]','$_POST[opcja]')";
$stmt = $pdo -> query($qr);
echo"$_POST[opcja]";
echo"$_POST[notatka]";
/*
kolumny:id,notatka,kategoria
adres: http://zaqsa.esy.es/1/
*/
?>
PS. Proszę o poprawienie kodu i dokładne objaśnienie, ponieważ jestem w tym początkujący.
Nie przemo996, to co proponujesz jest błędne. RFC jest w tym temacie ścisłe. Albo pomijamy całkowicie, albo musi się tam znaleźć niepusty URL, który jest poprawny i opcjonalnie otoczony spacjami.
Kak więc dziękuję za zwrócenie na to uwagi. Gość w kursie powiedział, że “zaleca się umieszczanie action zawsze, nawet z pustym linkiem”, ale teraz wiem że na to co on mówi trzeba uważać ponieważ on mówił też, że składnia echo wygląda tak echo(""); podczas gdy powinno być bez nawiasu. jednak te dwa błędy zwykle nie wpływają na wykonywanie skryptu, ale estetyka i szybkość pisania skryptu też są ważne.