json_decode işimi çözüyormuş. Ben sql where koşulunda bir hata yapmışım. Sorgu gerçekleşemediği için sonuç alamamışım🙂 Dinamik form yapısı üzerinde çalışıyorum. Basitçe aşağıdaki şekilde bir şeyler yaptım.
Örnek tablo yapısı
CREATE TABLE
form(
formIDint(11) NOT NULL,
formTitlevarchar(255) DEFAULT NULL,
formDesctext DEFAULT NULL,
formFieldNametext DEFAULT NULL,
formFieldTitletext DEFAULT NULL,
formFieldTypetext DEFAULT NULL,
formFieldValuetext DEFAULT NULL,
formFieldPlaceholdertext DEFAULT NULL,
formFieldRequiretext DEFAULT NULL,
formFieldStatustext DEFAULT NULL,
formStatusint(1) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin5;
{"name": "text", "surname": "text", "adress": "textarea","img":"file","education":"select"} bu yapıda input alanları için gerekli type, name, value, placeholder, require gibi verileri ayrı sütunlarda dizi olarak string kaydettim.
`
function trnFormBuilder($type="text",$name="",$require="",$value="",$placeholder="",$title="",$class="")
{
//basitce if else ile ile type değişkenine göre input,select,file benzeri html yapı üret
if($type=="text")
{
$trnReturn = '
<input type="'.$type.'" name="'.$name.'" value="'.$value.'" placeholder="'.$placeholder.'" class="'.$class.'" '.$require.' />
';
}
else if($type=="radio")
{
}
return $trnReturn;
}
// $formFieldName : ['name','surname','adres'] yapısı ile kayıtlı. explode metodu kullanarak veriyi diziye çevir
$formFieldName = str_replace("[","",$formFieldName);
$formFieldName = str_replace("]","",$formFieldName);
$formFieldName = str_replace('"',"",$formFieldName);
$formFieldName = explode(",", $formFieldName);
foreach( $formFieldName as $trnFieldName )
{
$trnFieldTitle = $formFieldTitle->$trnFieldName;
$trnFieldType = $formFieldType->$trnFieldName;
$trnFieldValue = $formFieldValue->$trnFieldName;
$trnFieldPlaceholder = $formFieldPlaceholder->$trnFieldName;
$trnFieldRequire = $formFieldRequire->$trnFieldName;
$trnFieldStatus = $formFieldStatus->$trnFieldName;
if($trnFieldStatus>0)
{
echo '<div class="col-lg-4 col-md-6 col-sm-12 column form-group">'.trnFormBuilder($trnFieldType="text",$trnFieldName,$trnFieldRequire,$trnFieldValue,$trnFieldPlaceholder,$trnFieldTitle,$class="").'</div>';
}
}
`