2016-07-19 2 views
2

У меня есть массив имен моих переменных POST для использования при обновлении строки в моей базе данных.Сохранение значений _POST массиву

$jobs = array("proposal_id", 
       "will_provide",   
       "general_scope",   
       "per_bid",    
       "job_type"); 

Использование этого стиля моя таблица называется заданиями, и каждое значение в массиве является идентификатором столбца.

Я хочу изменить этот массив, так что каждый элемент (столбец ID) содержит одну _POST значения

Тогда у меня есть функция, которая использует переменную для создания родовых запросов.

function save_data($jobs) { 

     foreach ($jobs as $job) 
     { 

      $job[$job[$i]] = _$Post[$job]; 

       or 

      Table_name[column] = cell value; 

      ... 
      ... 
      ... 

Я хочу, чтобы иметь возможность сохранять значения $ в связанных с ним переменных post. Что-то вроде

Например, если бы я собирался создать этот массив он будет выглядеть

$jobs = array('proposal_id' => '12345678','title_of_project' => 'aTitle','creator' => 'aUser','last_modified' => '0000-00-00','date_created' => '0000-00-00','price' =>'1000'); 
+4

'$ подрабатывать $ рабочих мест 'должно быть' $ jobs как $ job' – Ghost

+2

Как и @Ghost, вы должны изменить '$ jobs', используемые в операторе for, как' $ job', а также исправить второй экземпляр '$ jobs' в цикле for быть '$ job'. Это может решить вашу проблему, если это не поможет вам объяснить, что вы хотите по-другому, или дать пример того, что вы хотите. – ComputerLocus

+0

В вашей последней строке кода, что такое '$ values'? Остальная часть вашего кода не использует его. И в вашем цикле, как только вы получите значение из '$ _POST' и поместите его в' $ value', что вы намерены делать с '$ value'? То, что вам нужно, непонятно. – BeetleJuice

ответ

1

Это должно быть то, что вы ищете:

$jobs = array("proposal_id", 
       "will_provide",   
       "general_scope",   
       "per_bid",    
       "job_type"); 

$jobValues = array(); 
foreach($jobs as $job) { 
    $jobValues[] = isset($_POST[$job]) ? $_POST[$job] : null; 
} 

$jobs = array_combine($jobs, $jobValues); 
+0

Хорошо, можно ли использовать «предложение_ид» или любую другую переменную в массиве $ job в качестве моего индекса вместо $ i. –

+1

Вы можете изменить его, как хотите использовать любую уникальную переменную в качестве ключа '$ jobResult'. – ComputerLocus

+0

Это действительно близко к тому, что я думаю. В основном у меня есть мои массивы, настроенные как имя массива - моя db_table, и каждое значение в массиве db_table является столбцом в моей базе данных. То, что я пытаюсь сделать, это сохранить этот синтаксис, вставив переменную _post в каждый столбец. –

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