|
|
|
|
<?
$hostname = "localhost";
$username = "h8823_2";
$password = "2";
$dbName = "h8823_2";
/* Таблица MySQL, в которой хранятся данные */
$userstable = "a1a_script_step_pass_param";
/* создать соединение */
MYSQL_CONNECT($hostname,$username,$password) OR DIE("Не могу создать соединение ");
@mysql_select_db("$dbName") or die("Не могу выбрать базу данных ");
$query ="SELECT SUBSTRING(param FROM 6)
FROM `a1a_script_step_pass_param`
WHERE param LIKE 'pass_%'
AND `value` != ''
LIMIT 0 , 30";
$result = MYSQL_QUERY($query);
if(!$result) exit("Ошибка выполнения запроса - ".mysql_error());
/* Печать результатов в HTML */
print "<table>\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
print "\t<tr>\n";
foreach ($line as $col_value)
{
print "\t\t<td>$col_value</td>\n";
}
print "\t</tr>\n";
}
print "</table>\n";
/* Освобождение resultset */
mysql_free_result($result);
/* Закрытие соединения */
mysql_close($link);
$xml="
<digiseller.request>
<id_group>75096</id_group>
<page>1</page>
<rows>200</rows>
<order>price</order>
</digiseller.request>
";
function _GetAnswer($address, $xml){
$ch = curl_init($address);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
$result=curl_exec($ch);
return $result;
}
$answer=_GetAnswer("http://shop.digiseller.ru/xml/personal_goods.asp", $xml);
$xmlres = simplexml_load_string($answer);
echo "<TABLE>";
foreach ($xmlres->rows->row as $row) {
echo "<TR>";
echo "<TD>";
echo iconv("UTF-8", "CP1251", $row->name_goods);
echo "<TD>";
echo "блаблабла ";
echo iconv("UTF-8", "CP1251", $row->name_goods);
echo " ";
echo "<A href=/2/goods.php?idd=".$row->id_goods.">";
echo "купить";
echo "</A>";
}
echo "</TABLE>";
$icq = array_intersect ($col_value, $row->name_goods);
print"<br>";
print "$icq";
?>
|
хэлп, не работает как не пытался
$icq = array_intersect ($col_value, $row->name_goods);
print"<br>";
print "$icq";
| где подводный камень?=) | |
|
|
|
|
|
|
|
для: stigler
(03.06.2010 в 20:34)
| | Проверь, является ли $row->name_goods массивом.. А также $col_value. | |
|
|
|
|
|
|
|
для: Tonik992
(03.06.2010 в 21:29)
| | ммм как?
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
foreach ($line as $col_value)
{
print "$col_value";
}}
и
foreach ($xmlres->rows->row as $row) {
print"<br>";
print"$row->name_goods";
вот так написал выдаёт просто значения в строчку | |
|
|
|
|
автор: ........ (03.06.2010 в 21:50) |
|
|
для: stigler
(03.06.2010 в 21:34)
| | var_dump() — Dumps information about a variable
while ($line = mysql_fetch_row($result)) {
foreach ($line as $col_value)
$array[] = $line[0];
}
var_dump($array) | |
|
|
|
|
автор: .... (03.06.2010 в 21:53) |
|
|
для: ........
(03.06.2010 в 21:50)
| | забыл удалитьть строчку
foreach ($line as $col_value) | |
|
|
|
|
|
|
|
для: ....
(03.06.2010 в 21:53)
| | заминил кусок кода на это
/* Печать результатов в HTML */
while ($line = mysql_fetch_row($result)) {
$array[] = $line[0];
}
var_dump($array);
print "$array";
|
выводит это array(3) { [0]=> string(7) "4362363" [1]=> string(1) "6" [2]=> string(3) "666" } Array
пересечение попрежнему не работает | |
|
|
|
|
автор: ..... (03.06.2010 в 22:31) |
|
|
для: stigler
(03.06.2010 в 22:10)
| | $row->name_goods тоже не массив
print '<pre>';
var_dump($row->name_goods); | |
|
|
|
|
|
|
|
для: .....
(03.06.2010 в 22:31)
| |
foreach ($xmlres->rows->row as $row) {
print"<br>";
print"$row->name_goods";
print"<br>";
}
$array2[] = $xmlres[0];
var_dump($array2);
$icq = array_intersect ($arrey, $arrey2);
print "$icq";
?>
|
воттак???
в случае с var_dump($array2); получается это
array(1) { [0]=> object(SimpleXMLElement)#2 (8) { ["retval"]=> string(1) "0" ["retdesc"]=> object(SimpleXMLElement)#4 (0) { } ["id_group"]=> string(5) "75096" ["cnt_goods"]=> string(1) "2" ["pages"]=> string(1) "1" ["page"]=> string(1) "1" ["order"]=> string(5) "price" ["rows"]=> object(SimpleXMLElement)#3 (2) { ["@attributes"]=> array(1) { ["cnt"]=> string(1) "2" } ["row"]=> array(2) { [0]=> object(SimpleXMLElement)#6 (6) { ["@attributes"]=> array(1) { ["id"]=> string(1) "1" } ["id_goods"]=> string(6) "963688" ["name_goods"]=> string(5) "35632" ["price"]=> string(4) "0,04" ["currency"]=> string(3) "USD" ["credit_price"]=> object(SimpleXMLElement)#8 (0) { } } [1]=> object(SimpleXMLElement)#7 (6) { ["@attributes"]=> array(1) { ["id"]=> string(1) "2" } ["id_goods"]=> string(6) "963686" ["name_goods"]=> string(7) "4362363" ["price"]=> string(7) "4362363" ["currency"]=> string(3) "USD" ["credit_price"]=> object(SimpleXMLElement)#9 (0) { } } } } } }
пересечение по преждену молчил =( | |
|
|
|
|
|
|
|
для: stigler
(03.06.2010 в 23:09)
| | если
foreach ($xmlres->rows->row as $row) {
print"<br>";
print"$row->name_goods";
print"<br>";
}
print '<pre>';
var_dump($row->name_goods);
|
то
object(SimpleXMLElement)#2 (1) {
[0]=>
string(7) "4362363"
}
почему то одно значение из массива | |
|
|
|
|
|
|
|
для: stigler
(03.06.2010 в 23:11)
| | А ты смотрел как работает пересечение? Одинаковые значения объединяются в одно (ключи сохраняются)... Ты проверял, есть ли одинаковое хоть что-нибудь в этих двух массивах??
array array_intersect ( array $array1, array $array2 [, array $ ...] )
|
Функция array_intersect() возвращает массив, содержащий значения массива array1, которые содержат все перечисленные в аргументах массивы. Обратите внимание, что ключи сохраняются.
Пример 216. Пример использования array_intersect()
<?php
$array1 = array ("a" => "green", "red", "blue");
$array2 = array ("b" => "green", "yellow", "red");
$result = array_intersect ($array1, $array2);
В результате выполнения переменная $result будет содержать Array
(
[a] => green
[0] => red
)
?>
|
| |
|
|
|
|
|
|
|
для: Tonik992
(03.06.2010 в 23:56)
| | хррррррррррр
ну чего тут ещё не хватает * бьюсь головой об стол *
<?
$hostname = "localhost";
$username = "h8823_2";
$password = "2";
$dbName = "h8823_2";
/* Таблица MySQL, в которой хранятся данные */
$userstable = "a1a_script_step_pass_param";
/* создать соединение */
MYSQL_CONNECT($hostname,$username,$password) OR DIE("Не могу создать соединение ");
@mysql_select_db("$dbName") or die("Не могу выбрать базу данных ");
$query ="SELECT SUBSTRING(param FROM 6)
FROM `a1a_script_step_pass_param`
WHERE param LIKE 'pass_%'
AND `value` != ''
LIMIT 0 , 30";
$result = MYSQL_QUERY($query);
if(!$result) exit("Ошибка выполнения запроса - ".mysql_error());
/* Печать результатов в HTML */
while ($line = mysql_fetch_row($result)) {
$array[] = $line[0];
}
print '<pre>';
var_dump($array);
/* Освобождение resultset */
mysql_free_result($result);
/* Закрытие соединения */
mysql_close($link);
$xml="
<digiseller.request>
<id_group>75096</id_group>
<page>1</page>
<rows>200</rows>
<order>price</order>
</digiseller.request>
";
function _GetAnswer($address, $xml){
$ch = curl_init($address);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
$result=curl_exec($ch);
return $result;
}
$answer=_GetAnswer("http://shop.digiseller.ru/xml/personal_goods.asp", $xml);
$xmlres = simplexml_load_string($answer);
foreach ($xmlres->rows->row as $row) {
$array2[] = $row->name_goods[0];
}
print '<pre>';
var_dump($array2);
$icq = array_intersect ($arrey, $array2);
$icq2[] = $icq[0];
print '<pre>';
var_dump($icq2);
?>
|
выводит это
array(3) {
[0]=>
string(7) "4362363"
[1]=>
string(1) "6"
[2]=>
string(3) "666"
}
array(2) {
[0]=>
object(SimpleXMLElement)#7 (1) {
[0]=>
string(5) "35632"
}
[1]=>
object(SimpleXMLElement)#8 (1) {
[0]=>
string(7) "4362363"
}
}
array(1) {
[0]=>
NULL
} | |
|
|
|
|
автор: ..... (04.06.2010 в 23:09) |
|
|
для: stigler
(04.06.2010 в 18:02)
| | Вроде по логике должно быть
$array2[] = $row->name_goods;
из simplexml-елемента(-строки) из-за причудливости вроде нельзя извлечь первый байт как просто из строки $string[0], если память не изменяет
интересно откуда взялось array(1) {[0]=>NULL}
, наверное из-за
>$icq = array_intersect ($arrey, $array2);
опечатки в имени переменной | |
|
|
|
|
|
|
|
для: .....
(04.06.2010 в 23:09)
| | ААААААААААееееееееееееееееее!!!!! спасибо всем откликнувшимся! век не забуду =)))) | |
|
|
|