2014-01-11 2 views
0

В моей таблице «конфиг» У меня есть 38 полей, как вы можете увидеть ниже:BindValue Loop в вкладышем Жека п.д.о.

enter image description here

Затем, вместо того, чтобы вводить все эти поля в то время, я думаю, чтобы вставить следующий код:

$var = "";// var para os campos 
$var0 = ""; // var para os values 

for($i=1;$i<39;$i++){ 
    $var = $var.$i.','; 
} 

for($i=0;$i<36;$i++){ 
    $var0 = $var0.':'.$i.','; 
} 


$info_config = $ponte_db->prepare('INSERT INTO config ('.$var.') VALUES ('.$valor_cout.','.$var0.') ');  

for($i=0;$i<36;$i++){ 
    $info_config->bindValue(":".$i, $result[$i]); 
} 

$info_config->execute(); 

переменная результат следующим

enter image description here

Итак, моя идея не работает, но результаты в DataBase не сохраняются, почему?

+0

Ваша таблица 'config' написана с или без 's', как этот' configs'? –

+0

Извините, мое имя таблицы - это конфиг, я его редактирую – user3177502

ответ

0

У вас есть небольшая проблема, ваша строка переписать каждый раз:

так вместо этого:

for($i=1;$i<39;$i++){ 
    $var = $var.$i.','; 
} 

for($i=0;$i<36;$i++){ 
    $var0 = $var0.':'.$i.','; 
} 

ли это:

for($i=1;$i<39;$i++){ 
    $var .= $var.$i.','; 
} 

for($i=0;$i<36;$i++){ 
    $var0 .= $var0.':'.$i.','; 
} 

Единственное отличие состоит в том, что я добавляю a . до =.

.= короткая рука для $string = $string + 'value';

Кроме того, я думаю, вы должны изменить это (но я не уверен, потому что я не знаю, где $valor_cout приходит от):

$info_config = $ponte_db->prepare('INSERT INTO config ('.$var.') VALUES ('.$valor_cout.','.$var0.') '); 

Для

$info_config = $ponte_db->prepare('INSERT INTO config ('.$var.') VALUES ('.$var0.') '); 
+0

$ valor_cout - это $ _cookie и представляет собой логин пользователя – user3177502

Смежные вопросы