getgrav/grav · error · RuntimeException
Form has already been submitted
Error message
Form has already been submitted
What it means
Error "Form has already been submitted" thrown in getgrav/grav.
Source
Thrown at system/src/Grav/Framework/Form/Traits/FormTrait.php:373
$this->setError($e->getMessage());
}
$this->filterData($this->data);
return $this->isValid();
}
/**
* @param array $data
* @param UploadedFileInterface[]|null $files
* @return FormInterface|$this
*/
public function submit(array $data, ?array $files = null): FormInterface
{
try {
if ($this->isSubmitted()) {
throw new RuntimeException('Form has already been submitted');
}
$this->data = new Data($data, $this->getBlueprint());
$this->files = $files ?? [];
if (!$this->validate()) {
return $this;
}
$this->doSubmit($this->data->toArray(), $this->files);
$this->submitted = true;
} catch (Exception $e) {
/** @var Debugger $debugger */
$debugger = Grav::instance()['debugger'];
$debugger->addException($e);
$this->setError($e->getMessage());View on GitHub (pinned to 6040efed04)
When it happens
Trigger: Thrown at system/src/Grav/Framework/Form/Traits/FormTrait.php:373 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of getgrav/grav@6040efed04 (2026-08-17).
Data as JSON: /api/errors/ba60c3ac180c05ef.
Report an issue: GitHub.