0 レビュー
2 回答
ループ-PHPの「unset()」関数は前のコードの前に機能します
問題があります。
別のページのグラフオブジェクトでデータを(セッションとして)渡しました。後でセッションの設定を解除しないと、2つの同じグラフが表示されます。それ以外の場合は、グラフが表示されません。 unset、var = NULLを試して、whileループの外側でセッションを= array();で宣言しました。しかし、すべての方法が失敗しました。夢中になっている!どうか、あなたの知識で私を照らしてください。ありがとう。
これはコードです(申し訳ありませんが、このサイトでコードをインデントすることはできません):
//STATISTICHE.PHP
<?php session_start(); ?>
<html>
<head>
<link rel="stylesheet" type="text/css" href="../../css/stile.css">
</head>
<body>
<?php
include_once("../../classi/utils.lib.php");
include_once("../../classi/license.lib.php");
include_once("../../classi/funzioni.php");
include_once("../../classi/config.php");
include_once("../../classi/auth.lib.php");
list($status, $user) = auth_get_status();
if($status == AUTH_LOGGED && license_has($user, "sede_centrale"))
{
menu();
echo "<h1>STATISTICHE</h1>";
$query="SELECT nome FROM negozi ORDER BY id ASC";
$risultato=$db_magazzino->query($query);
while($negozio=$risultato->fetch_assoc())
{
$rimanenze=rimanenze($negozio['nome'], NULL, NULL, NULL, NULL);
$query2="SELECT * FROM elenco_movimenti WHERE causale='Vendita al dettaglio' AND fornitore='".$negozio['nome']."' ORDER BY data DESC";
$risultato2=$db_magazzino->query($query2);
while($scarico=$risultato2->fetch_assoc())
{
$_SESSION['data'][$scarico['data']]=$scarico['quantita'];
//echo $_SESSION['data'][$scarico['data']];
}
//var_dump($rimanenze);
if(count($rimanenze)>0)
{
echo "<h2>Grafico delle vendite di ".$negozio['nome'].":</h2>";
echo "<h4>Valore magazzino ".$negozio['nome'].": ".$rimanenze[count($rimanenze)-1]['valorizzazione_magazzino']." Euro</h3>";
//var_dump($_SESSION['data']);
if($_SESSION['data']!=NULL){
echo "<br/><img src=\"grafico.php\"/>";
unset($_SESSION['data']);}
}
//$risultato2->close();
}
} else
non_autorizzato();
?>
</body>
GRAFICO.PHP
<?php
session_start();
include_once("../../classi/phpgraphlib-master/phpgraphlib.php");
$graph=new PHPGraphLib(1000,500);
//Aggiungo i valori di cui sopra
$graph->addData($_SESSION['data']);
//Imposto il titolo
$graph->setTitle("Prodotti venduti");
//Indichiamo alla libreria di non mostrare le barre
$graph->setBars(false);
//Di conseguenza segnaliamo che si tratta di un grafico a linee
$graph->setLine(true);
//Visualizza un bollino nel punto del valore indicato
$graph->setDataPoints(true);
//Indichiamo il colore del bollino
$graph->setDataPointColor("yellow");
//Visualizza il valore del punto
$graph->setDataValues(true);
//Indichiamo il colore
$graph->setDataValueColor("blue");
//Creo il grafico
$graph->createGraph();
?>
わからない
0
レビュー
答え :
解決策:
{-code-1かどうかを確認するだけでなく、emptyまたはisset関数を使用してみてください。 }
はnull
と同じです。
これらの関数を使用して、変数の存在と、それらの値が空でないかどうかを確認できます。
わからない
0
レビュー
答え :
解決策:
SESSION変数の設定を解除する直前にgrahico.phpを呼び出します。基本的には、このSESSION[データ]に何が含まれているかを知ることになります。 デバッグアクションを実行します。コードに以下を配置し、結果を貼り付けます。
if ($_SESSION['data'] != NULL) {
echo "<pre>";
print_r($_SESSION['data']);
echo "</pre>";
exit;
echo "<br/><img src=\"grafico.php\"/>";
unset($_SESSION['data']);
}
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。