ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

28.03.2008, 01:02
|
|
Участник форума
Регистрация: 08.09.2006
Сообщений: 194
Провел на форуме: 1627025
Репутация:
163
|
|
str_split($string) в 5 php появилась
код поменьше
Код:
$string = 'test';
$rezult = wordwrap($d, 1, ":+:",1);
$array = split("[:+:]+",$rezult);
|
|
|

28.03.2008, 11:55
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме: 2209675
Репутация:
537
|
|
как понять подобную конструкцию??
PHP код:
$this->_smarty->assign($spec);
http://framework.zend.com/manual/ru/zend.view.scripts.html
|
|
|

28.03.2008, 12:24
|
|
Познающий
Регистрация: 19.03.2006
Сообщений: 37
Провел на форуме: 400363
Репутация:
11
|
|
Здравствуйте уважаемые. Есть база Oracle. В ней есть 2 таблицы
в первой таблице находятся столбцы ID и SNAME
во второй находятся FIN, DEAL и т.д.
такого плана:
1-я таблица
| ID | SNAME |
| 173 | Intel |
| 432 | AMD |
| 324 | core2duo|
| 321 | phenom |
| .......| ...............|
| .......| ...............|
| .......| ...............|
| 532 | centrino |
2-я таблица
| FIN | DEAL |
| 200 | 302.432 |
| 127 | 7324.21 |
| 173 | 212.454 |
| 432 | 4342.21 |
| .........| ..............|
| .........| ..............|
| .........| ..............|
| 321 | 32432.2 |
Смысл этих 2-х таблиц состоит в том что должна выводиться 2-я таблица и вместо FIN подставлять SNAME из таблицы 1
т.е. должно получаться в итоге
| наименование | цена |
| intel | 212.454 |
| AMD | 4342.21 |
| phenom | 32432.2 |
|...............| ......................|
|...............| ......................|
|...............| ......................|
Собственно вопрос как сделать это сопоставления
На данный момент код такой
Код:
<HTML>
<BODY>
<?php
$c = OCILogon ( );
if ( ! $c ) {
echo "not connected: " . var_dump ( OCIError () );
die();
}
$x = OCIParse ( $c , "select * from fin" );
OCIExecute ( $x , OCI_DEFAULT );
while ($row1 = oci_fetch_array ($x, OCI_ASSOC)) {
echo "<td>", $row1['ID'], " ", "</td>";
echo "<td>", $row1['SNAME'], "</td><BR>";
}
echo "<table border=1>";
echo "<tr><th>FIN</th><th>L_PRICE</th><th>BEST_BUY</th><th>DEAL_MIN</th><th>DEAL_MAX</th></tr>";
$s = OCIParse ( $c , "select * from inf_ac" );
OCIExecute ( $s , OCI_DEFAULT );
echo "<tr>";
while ($row = oci_fetch_array ($s, OCI_ASSOC)) {
echo "<td>", $row['FIN'], "</td>";
echo "<td>", $row['L_PRICE'], "</td>";
echo "<td>", $row['BEST_BUY'], "</td>";
echo "<td>", $row['DEAL_MIN'], "</td>";
echo "<td>", $row['DEAL_MAX'], "</td>";
echo "</tr>";
}
echo "</table>";
OCICommit ( $c );
?>
</BODY>
</HTML>
Последний раз редактировалось anakreon; 28.03.2008 в 12:36..
|
|
|

28.03.2008, 13:00
|
|
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме: 3660186
Репутация:
905
|
|
А в оракле возможно сделать так?
Код:
select t1.sname, t2.deal from table1 t1
left join table2 t2 on t1.id = t2.fin
|
|
|

28.03.2008, 13:44
|
|
Познающий
Регистрация: 13.01.2008
Сообщений: 82
Провел на форуме: 247944
Репутация:
22
|
|
как сделать что бы $models["1"] выводился через запятую(1,2,3,4)
while ($models = mysql_fetch_array($model))
{
echo $models["1"];
}
|
|
|

28.03.2008, 13:56
|
|
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
Провел на форуме: 3493315
Репутация:
1228
|
|
Сообщение от SeGaLWS
как сделать что бы $models["1"] выводился через запятую(1,2,3,4)
while ($models = mysql_fetch_array($model))
{
echo $models["1"];
}
PHP код:
while ($models = mysql_fetch_array($model))
echo $models[1].',';
|
|
|

28.03.2008, 14:03
|
|
Познающий
Регистрация: 13.01.2008
Сообщений: 82
Провел на форуме: 247944
Репутация:
22
|
|
Сообщение от nc.STRIEM
PHP код:
while ($models = mysql_fetch_array($model))
echo $models[1].',';
специально написал в скобках (1,2,3,4,5) в предложеном варианте выводит (1,2,3,4,5,)
|
|
|

28.03.2008, 13:56
|
|
Познающий
Регистрация: 19.03.2006
Сообщений: 37
Провел на форуме: 400363
Репутация:
11
|
|
Не проходит... Пустоту выводит
|
|
|

28.03.2008, 14:28
|
|
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
Провел на форуме: 3493315
Репутация:
1228
|
|
PHP код:
$a='(';
while ($models = mysql_fetch_array($model))
$a.=$models[1].',';
$a.=')';
$a = str_replace(',)', ')', $a);
или
PHP код:
$a='';
while ($models = mysql_fetch_array($model))
$a.=$models[1].',';
unset($a[strlen($a)-1]);
|
|
|

28.03.2008, 14:31
|
|
Участник форума
Регистрация: 08.09.2006
Сообщений: 194
Провел на форуме: 1627025
Репутация:
163
|
|
так не проше?
PHP код:
$str="";
while ($models = mysql_fetch_array($model))
$str = $str . $models[1].',';
$result = substr($str,0,strlen($str)-1);
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|