Wie ziet wat ik fout doe. Onthouden doet hij wel bij een submit. Ik ben al dagen aan het zoeken.


if ($_SERVER['REQUEST_METHOD'] == 'POST'){
$test = $_POST['$test'];
$users->register($test);
}
<form method="post" action="">
<input type="radio" name="test" placeholder="" value="ja" class="form-control"<?php if(isset($_POST['test']) && $_POST['test'] == 'ja') echo ' checked="checked"'; ?> /> ja
<input type="radio" name="test" placeholder="" value="nee" class="form-control"<?php if(isset($_POST['test']) && $_POST['test'] == 'nee') echo ' checked="checked"'; ?> /> nee 
<input type="submit" name="submit" value="Versturen">
</form>


Ik krijg deze foutmelding:
SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'test' cannot be null

Wordt variabele $test niet herkend en krijgt deze dan de waarde "null"? Andere inputvelden werken wel (alleen als ik de "radio" vraag weglaat dan).
Vervang:

$test = $_POST['$test'];

door:

$test = $_POST['test'];
Bedankt voor je snelle reactie. Helaas dezelfde error.
Laat de code van de methode register() eens zien?
Probeer de waarde van $_POST['test'] eens boven de aanroep van de register() functie te printen. Wat is daarvan de uitkomst. Vermoedelijk zit het probleem in de register() functie zelf.

Wat door Ward werd aangemerkt moet wel daadwerkelijk verbeterd worden ondanks dat het de error niet compleet oplost.
$test = $_POST['$test']; inderdaad niet juist. Register() ook aangepast. E.e.a. werkt nu.
Bedankt Ward en Salvatore voor jullie goede hulp!

Reageren