PHP - QuickForm Ziyade Mesaj al olarak Sundu

1 Cevap php

Ben PEAR'ın HTML_QuickForm başlamak için çalışıyorum ama bir sorun yaşıyorum. Nedense benim form tüm verileri GET değil POST ile teslim ediliyor. Varsayılan POST olması gerekiyordu ve ben açıkça ayarlama denedim. Ben anlamaya mümkün oldum tek şey ben sadece formda ekran () çağırdığınızda düzgün çalışıyor olmasıdır. Ben düzgün çalışmıyor kullanan zaman statik şablonu kullanarak ve nedense ediyorum. Benim kod aşağıda sunulmuştur.

<?php
include_once 'HTML/QuickForm.php';
include_once 'HTML/Template/Sigma.php';
include_once 'HTML/QuickForm/Renderer/ITStatic.php';

$form = new HTML_QuickForm('formtest', 'post');
$form->addElement('text', 'mytext');
$form->addRule('mytext', 'This is required', 'required');
$form->addElement('submit', 'mysubmit', 'This is a submit button');

$tpl = & new HTML_Template_Sigma('.');
$tpl->loadTemplateFile('template.html');
$renderer = & new HTML_QuickForm_Renderer_ITStatic($tpl);
$renderer->setRequiredTemplate('{label}<font color="red" size="1">*</font>');
$renderer->setErrorTemplate('<font color="red">{error}</font><br />{html}');
$form->accept($renderer);
$tpl->show();
?>

1 Cevap

Nevermind, ben bir aptalım ve hemen sorunu fark etti. Benim şablon dosyası bu gibi görünüyordu:

<html>
<head><title>Test Form</title></head>
<body>
<form>
{formtest_mytext_html}<br />
{formtest_mytext_label}<br />
{formtest_mysubmit_html}<br />
{formtest_mysubmit_label}<br />
</form>
</body>
</html>

Sorun benim form etiketi her zaman GET öndeğer yüzden POST olması gerekiyordu olduğunu bilmek için bir yol vardı. Bunun yerine form etiketi böyle baktım

<form {formtest_attributes}>

Elbette {formtest_attributes} kendisi POST yapmak için formu söyler bit olmak.