|
|
|
| Помогите, плиз, занести данные из ассоциативного массива в одно поле таблицы, т.е. после обработчика получатся несколько значений и их нужно разместить в одно определенное поле Town таблицы Dan, чтобы они соответствовали одному ключу этой таблицы
if(!empty($_POST))
{
if(!preg_match("|^[\d]+$|",$_POST['d'])) exit("Не верный формат запроса");
$query = "SELECT * FROM Towns WHERE Kan = ".$_POST['d'];
$twn = mysql_query($query);
if(!$twn) exit(mysql_error());
$arr = array();
if(mysql_num_rows($twn))
{
while($town = mysql_fetch_array($twn))
{
if(!empty($_POST[$town['TID']])) $arr[] = $town['TID']
}
}
foreach($i = 0; $i < count($arr); $i++) $arr[$i] = "('".$arr."')";
mysql_query("INSERT INTO Dan (Town)
VALUES
".implode(",",$arr)."",$db);
|
вот в этой строке
foreach($i = 0; $i < count($arr); $i++) $arr[$i] = "('".$arr."')";
|
почемуто выдает ошибку? | |
|
|
|
|
|
|
|
для: xpom
(04.11.2006 в 15:25)
| | Замените блок
<?php
while($town = mysql_fetch_array($twn))
{
if(!empty($_POST[$town['TID']])) $arr[] = $town['TID']
}
?>
|
на
<?php
while($town = mysql_fetch_array($twn))
{
if(!empty($_POST[$town['TID']])) $arr[] = $town['TID'];
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(04.11.2006 в 16:05)
| | Это почемуто не помогло?
Может быть вместо вот этого блока
foreach($i = 0; $i < count($arr); $i++) $arr[$i] = "('".$arr."')";
mysql_query("INSERT INTO Dan (Town)
VALUES
".implode(",",$arr)."",$db);
|
Сделать такой блок
foreach($arr as $val){
$val[$i] = "('".$arr."')";
mysql_query("INSERT INTO Dan (Town)
VALUES
".implode("AND",$arr)."",$db);
}
|
Они отличаются друг от друга?
У меня не получается сделать запрос к ячейки Town таблицы Dan, чтобы проверить что там находится, вот делаю
$opr = mysql_query("SELECT * FROM Dan WHERE Lat= $fil",$db);
while ($tyt = mysql_fetch_row($opr))
{
$frt=$tyt[9];
print ("$frt");
}
|
и вот что выводит Array)Array)
Как правильно сделать запрос? | |
|
|
|
|
|
|
|
для: xpom
(04.11.2006 в 17:10)
| | Ассоциативный массив содержит вот такой вид
Array
(
[0] => 4
[1] => 5
)
|
Можно так сделать чтобы числакоторые справа, в нашем случае 4 и 5, заносились в поле Town таблицы Dan через запятую, которые можно было бы использовать для запроса вывода данных, если есть такое число выводились бы данные, если нет не выводились.
Ну а усли нельзя так сделать тогда сделать запрос с этими 4 и 5 к таблице Towns, а потом сами имена заносить через запятую в поле Town таблицы Dan, которые можно было б отдельно использовать для запроса вывода данных? | |
|
|
|
|
|
|
|
для: xpom
(04.11.2006 в 21:58)
| | Help please!!! | |
|
|
|
|
|
|
|
для: xpom
(04.11.2006 в 21:58)
| | >Ассоциативный массив содержит вот такой вид
Это какой (его название)? | |
|
|
|
|
|
|
|
для: cheops
(05.11.2006 в 12:30)
| | >Это какой (его название)?
Вот эта ж переменная имеет ассоциативный массив
После обработчика
if(!empty($_POST))
{
if(!preg_match("|^[\d]+$|",$_POST['d'])) exit("Не верный формат запроса");
$query = "SELECT * FROM Towns WHERE Kan = ".$_POST['d'];
$twn = mysql_query($query);
if(!$twn) exit(mysql_error());
$arr = array();
if(mysql_num_rows($twn))
{
while($town = mysql_fetch_array($twn))
{
if(!empty($_POST[$town['TID']])) $arr[] = $town['TID']
}
}
|
переменная $arr имеет ассоциативный массив, можно с него сделать обычный массив? | |
|
|
|
|
|
|
|
для: xpom
(05.11.2006 в 17:51)
| | Хм... а почему ассоциативный? Вроде же индексный массив?
PS поставьте в конце строки точку с запятой
<?php
if(!empty($_POST[$town['TID']])) $arr[] = $town['TID'];
?>
|
PPS Выведите дамп $tut
<?php
$opr = mysql_query("SELECT * FROM Dan WHERE Lat= $fil",$db);
while ($tyt = mysql_fetch_row($opr))
{
$frt=$tyt[9];
echo "<pre>";
print_r($tyt);
echo "</pre>";
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(05.11.2006 в 21:59)
| | >Хм... а почему ассоциативный? Вроде же индексный массив?
Да все правильно индексный массив! Это я ошибался. Я думал что если array то это ассоциативный :) Я только начинающий, совсем не опытный!
>PS поставьте в конце строки точку с запятой
Да я поставил там точку с запятой, это я просто с форума брал!
>PPS Выведите дамп $tut
Вывел:
Array
(
[0] => 23
[1] => 3
[2] => dfgghhfhgf
[3] => tup
[4] => fhgfghfhf
[5] => jhgffhjgj
[6] => fghfhfgh
[7] => vghfvgjfg
[8] =>
[9] =>
)
|
Это я так понял оно вывело все поля! | |
|
|
|
|
|
|
|
для: xpom
(06.11.2006 в 20:46)
| | Тогда давайте объясняйте фразу
>переменная $arr имеет ассоциативный массив, можно с него сделать обычный массив?
что под ней имеете в виду :)? | |
|
|
|
|
|
|
|
для: cheops
(06.11.2006 в 22:19)
| | Раз это не ассоциативный массив, нужно просто сделать так, чтобы те элементы которые будут с флажками после обработчика занеслись в поле перечислением? | |
|
|
|
|
|
|
|
для: xpom
(06.11.2006 в 22:26)
| | Help please!!! | |
|
|
|
|
|
|
|
для: xpom
(07.11.2006 в 19:08)
| | Плиз!!! | |
|
|
|
|
|
|
|
для: xpom
(07.11.2006 в 22:30)
| | Подскажите пожалуйста, как переменную $arr которая имеет нескалько значений занести в одно поле таблицы? | |
|
|
|