2010-12-08 3 views
0

Я отправляю результаты цикла по почте в php-файл для обработки (вставка в db). Но я не уверен, как получить результаты самым эффективным способом. прямо сейчас это либо 1. обновление $ _POST ['name-id'] и $ _POST ['оккупация-id] или 2. создание $ _POST [' new_name- # '] и $ _POST [' new_occupation- # ] с переменной #, начинающейся с 1 и подсчета.

Я застрял на эффективный способ вытягивать все эти данные, и передачи его переменным +, как отделить имена от новых имен

в PHP документ один есть в основном таблица 2 колонки в форме это сообщение метода и на отправке переходит к другому файлу php. код немного запутанным так хотел повременить положить все это»

while ($tracks = mysql_fetch_array($trackstring)){ 
    echo "<li class=\"tracklist\"><input type=\"text\" name=\"tracknum-".$tracks['song_id']."\" id=\"tracknum-".$tracks['song_id']."\" value=\"".$tracks['song_tracknumber']."\"/> 
    <input type=\"text\" name=\"trackname-".$tracks['song_id']."\" id=\"trackname-".$tracks['song_id']."\" value=\"".$tracks['song_title']."\"/></li>"; 
    } 

for ($i = 0; $i < ((mysql_num_rows($trackstring) < 1) ? 20 : 5); $i++){ 
//for($i=1; $i< $numtracks; $i++){ 
    $count++; 
     echo "<li class=\"tracklist\"><input type=\"text\" name=\"newtracknum-".$count."\" id=\"newtracknum-".$count."\" value=\"\"/><input type=\"text\" name=\"newtrackname-".$count."\" id=\"newtrackname=".$count."\" value=\"\"/></li>"; 
     } 

и мне нужно, чтобы вытащить, что в другом файле PHP и сортировать его, так что я могу взять trackname- # и tracknumber- # в значении для обновления id # из db. Я чувствую, что могу заставить его работать, передавая некоторые невидимые вещи в массив

+0

я не вниз голосование этот вопрос - на самом деле я снял вниз голосование, но вопрос кажется неясным. Не могли бы вы предоставить более подробную информацию? – karim79 2010-12-08 01:43:37

+0

Что делает `$ _POST` глобальное отношение к * отправке * данных POST? `$ _POST` предназначен для входящих данных POST, и вы, как правило, не меняете его. Просьба привести пример. – Hamish 2010-12-08 01:46:26

ответ

2

Является ли каждая итерация цикла выполняющей отдельную запись (например, свежий curl_exec () или что-то еще?) В этом случае каждый запрос будет независим от всех остальных, и вы можете просто повторно использовать те же имена полей для каждого.

Если это все в запросе, затем используйте своего рода функцию PHP и заставляйте ее создавать массив из данных post. Если вы добавите [] в конец имени поля, PHP будет обрабатывать это поле как массив и сохранять данные как таковые, пока он обрабатывает сообщение.

.: например

<input type="text" name="arr[]" value="hi" /> 
<input type="text" name="arr[]" value="there" /> 

при обработке PHP приведет:

$_POST = array(
    'arr' => array(
     0 => 'hi', 
     1 => 'there' 
    ) 
) 

Вы можете даже заставить подстрочные, если вы этого хотите, просто поместите их внутрь [], например, name="arr[12]" и name="arr[42]" даст вам

$_POST = array(
    'arr' => array(
     12 => 'hi', 
     42 => 'there' 
    ) 
)