|
|
|
| Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in W:\www\Veling\page10.php on line 11
<?
require_once("config.php");
$i=0;
$Data_Sub=0;
$DataPrice="";
$db = mysql_connect($dbhost, $dbuser, $dbpass, $dbname);
$query = "SELECT currency_id as currs FROM currency_rate GROUP BY currency_id";
$rs = mysql_query($query, $db);
while($dc = mysql_fetch_row($rs))
{
$rs1 = mysql_query("SELECT max(date) AS date FROM currency_rate WHERE currency_id = " . $dc[0], $db);
$dc1 = mysql_fetch_row($rs1);
$rs2 = mysql_query("SELECT rate FROM currency_rate WHERE currency_id=" . $dc[0] . " AND date = '" . $dc1[0] . "'", $db);
$dc2 = mysql_fetch_row($rs2);
$Cost[$dc[0] - 1] = $dc2[0];
}
function GetDataPrice ($Line,&$Data) #Get the header
{
global $db;
#$db = mysql_connect($dbhost, $dbuname, $dbpass);
$result=mysql_query("select name from price where id_major='$Line'", $db);
$data = mysql_fetch_row($result);
#while ($data = mysql_fetch_row($result))
# {
echo $DataHead="<center><font class='option_head'><b>$data[0]</font></b></center><br>";
# }
}
function GetDataSubPrice ($Line) #Get the data from sub_level
{
global $db;
$Line_Sub=$Line."__";
#$db = mysql_connect ($dbhost,$dbuname,$dbpass);
$SQL = "SELECT name, id_major, price, currency_id, comment, id_item_producer, isFolder, ceiling, infolink, price.qty, transit.qty FROM price LEFT JOIN transit ON price.id_base = transit.kbs4id WHERE id_major like '$Line_Sub' ORDER BY id_major";
#$SQL = "SELECT name, id_major, price, currency_id, comment, id_item_producer, isFolder, ceiling, infolink, qty FROM price WHERE id_major like '$Line_Sub' ORDER BY posit";
#echo $SQL;
$result = mysql_query($SQL, $db);
$Data_SubPrice = "";
while ($data = mysql_fetch_row($result))
{
$sub = substr($data[1], 0, 4);
if( $sub == '0101' || $sub == '0104' )
$data[9] = ' ';
else
$data[9] = (($data[9] > 0) ? 'На складе' : (($data[10] > 0) ? 'В транзите' : 'Под заказ'));
$Data_SubPrice[]=$data;
}
return $Data_SubPrice;
}
function PrintDataSubPrice ($Root,&$DataPrice)
{
global $Cost;
$Cost_value=0;
$i=0;
$bgc = "#FFFFFF";
$Data_Sub = GetDataSubPrice($Root);
while ($Data_Sub[$i])
{
if($Data_Sub[$i][2] != '0.0000')
{
$Cur = $Data_Sub[$i][3] - 1;
if ($Data_Sub[$i][7] == 0) { $Data_Sub[$i][7] = 0.1; } // По дефолту
$Cost_value = $Price = ((int)($Data_Sub[$i][2] * $Cost[$Cur] / $Data_Sub[$i][7] + 0.5)) * $Data_Sub[$i][7];
}
if ($Data_Sub[$i][6] != '1')
{
$DataPrice = $DataPrice . "<tr bgcolor=".$bgc."><td>";
if($Data_Sub[$i][8] != "")
{
$DataPrice = $DataPrice . "<a target=ItemRef href=" . $Data_Sub[$i][8] . ">";
}
$DataPrice = $DataPrice . $Data_Sub[$i][0];
if($Data_Sub[$i][8] != "")
{
$DataPrice = $DataPrice . "</a>";
}
$DataPrice .= "</td><td align='center'> " . $Data_Sub[$i][5] . " </td><td align='right'> " . $Cost_value . " р.</td>";
$DataPrice .= "<td align=\"center\"> ".$Data_Sub[$i][9]." </td></tr>\n";
}
else
{
$G = dechex (strlen ($Data_Sub[$i][1]));
$DataPrice=$DataPrice."<tr bgcolor=".$bgc."><td align='center' colspan='4' bgcolor='#F3F1FF'><b>".$Data_Sub[$i][0]."</b></td></tr>";
}
PrintDataSubPrice($Data_Sub[$i][1], &$DataPrice);
$i++;
$Cost_value=0;
if($bgc == "#FFFFFF") { $bgc = "#EEEEEE"; }
else { $bgc = "#FFFFFF"; }
}
}
|
Помогите плиз! | |
|
|
|
|
|
|
|
для: spyder
(09.03.2006 в 18:45)
| | Возможно у Вас ошибка в одном из запросов запросе к БД, проверьте все запросы!
Скорей всего в этом
SELECT currency_id as currs FROM currency_rate GROUP BY currency_id
|
| |
|
|
|
|
|
|
|
для: spyder
(09.03.2006 в 18:45)
| | После строк
<?php
$query = "SELECT currency_id as currs FROM currency_rate GROUP BY currency_id";
$rs = mysql_query($query, $db);
?>
|
поставьте проверку
<?php
if(!$rs) exit(mysql_error());
?>
|
Что выводится? | |
|
|
|
|
|
|
|
для: cheops
(09.03.2006 в 19:43)
| | No database selected | |
|
|
|
|
|
|
|
для: spyder
(10.03.2006 в 10:23)
| | после команды
$db = mysql_connect($dbhost, $dbuser, $dbpass, $dbname);
надо вставить
$db_select = mysql_select_db ($db_database) or die(mysql_error()); | |
|
|
|
|
|
|
|
для: elenaki
(10.03.2006 в 10:31)
| | Попрежнему пишет No database selected | |
|
|
|
|
|
|
|
для: spyder
(09.03.2006 в 18:45)
| | Червертый параметр mysql_connect - это вовсе не имя базы, как Вы пытаетесь писать:
$db = mysql_connect($dbhost, $dbuser, $dbpass, $dbname);
Имя базы указывается вызовом отдельной функции mysql_select_db():
Так что после подключения к серверу, необходимо выбрать базу, с которой Вы хотите работать:
$db = mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db($dbname, $db);
|
| |
|
|
|
|
|
|
|
для: Trianon
(10.03.2006 в 10:34)
| | все получилось.
Всем огромное СПАСИБО!!! | |
|
|
|
|
|
|
|
для: spyder
(10.03.2006 в 10:45)
| | У меня ещё ошибка появилась
Notice [PHP]: Uninitialized string offset: 0 in file W:\www\Final\html\modules\tinyd0\content\comp.php line 67
И ещё подскажите пожалуйста почему из базы текст который на русском показывает ????????? ????????? ? ?????????? | |
|
|
|
|
|
|
|
для: spyder
(10.03.2006 в 12:26)
| | 1. К сожалению, здесь не видно, что именно творится в Вашем файле comp.php в райное 66-67 строки.
2. Вероятно, потому, что следует указывать параметры кодировок для соединения с MYSQL
<?
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
?>
|
| |
|
|
|
|
|
|
|
для: Trianon
(10.03.2006 в 12:38)
| | спасибо за кодировку.
А как быть с ошибкой?
он ругается вот на эту строку while ($Data_Sub[$i]) | |
|
|
|
|
|
|
|
для: spyder
(10.03.2006 в 12:42)
| | Может быть имелось в виду while (isset($Data_Sub[$i]) )?
PS.
Между прочим, на PHP так с массивами не работают.
вместо
<?
while (isset($Data_Sub[$i]) )
{
if($Data_Sub[$i][2] != '0.0000')
....
$i++;
}
?>
| пишут
<?
foreach($Data_sub as $i => $data)
{
if($data[2] != '0.0000')
......
}
?>
|
| |
|
|
|