Tenho uma pekena duvida em PHP

PHP, Java, JavaScript, XML, XHTML, HTML, CSS, ASP, Delphi, Assembly, LaTeX, C, UML, Flash, Perl, SQL, Python, Zope, Pascal, WML. Se conhece mais de 3 siglas referidas, este é o forum para si.

Moderadores: Administradores, Moderadores

Tenho uma pekena duvida em PHP

Mensagempor kugasthelast » Quinta Jul 19, 2007 14:47

É o seguinte tenho uma lista de 15 utilizadores, com informação em so apenas 3 e com este codigo so me apresenta na pagina os 3 utilizadores com a informação, e o queria era que me apresenta-se todos os utilizadores com e sem infomaçao.... aah tou a fazer junção de tabelas utilizadores de uma tabela(tbl_utilizador) e a informaçao da outra(tbl_custo)....o codigo é o seguinte:


<?php
session_start();
require_once 'includes/connect.php';
require_once 'includes/header.php';
if(!$_SESSION['SID'] && !$_SESSION['idlog'])
{
#error_log('FILES!!!');
header('Location: index.php');
}
?>
<html>
<head>
<link rel="stylesheet" type="text/css" href="..includes/styles_sms.css" >
<style type="text/css">
<!--
#bodyT{
background-image:url(images/barra.png);
text-align: center;
vertical-align:middle;
font-size: 9;
}
.style6 {font-size: 12}
-->
</style>
<title>..::Factura::..</title>
</head>
<body>
<?php
echo '<br></br>';
echo '<br></br>';
echo '<br></br>';
echo '<br></br>';
echo '<table width="100%" id="bodyT" class="bodyturma">';
echo '<tr>';
echo '<th class="style2" scope="col">Combustível</th>';
echo '</tr>';
echo '</table>';
echo '<table width="100%" align="center" class="bodyturma">';
echo '<tr class="formI">';
echo '<th width="105" class="style0" scope="col" id="border"><div align="center">Utilizador</div></th>';
echo '<th width="57" class="style0" scope="col" id="border"><div align="center">Acção</div></th>';
echo '<th width="62" class="style0" scope="col" id="border"><div align="center">Nº de Cartão</div></th>';
echo '<th width="40" class="style0" scope="col" id="border"><div align="center">CC</div></th>';
echo '<th width="78" class="style0" scope="col" id="border"><div align="center">Matricula</div></th>';
echo '<th width="94" class="style0" scope="col" id="border"><div align="center">Combustível</div></th>';
echo '<th width="56" class="style0" scope="col" id="border"><div align="center">Custo</div></th>';
echo '<th width="76" class="style0" scope="col" id="border"><div align="center">Desconto</div></th>';
echo '<th width="54" class="style0" scope="col" id="border"><div align="center">Iva 21%</div></th>';
echo '<th width="56" class="style0" scope="col" id="border"><div align="center">Iva Ded.</div></th>';
echo '<th width="50" class="style0" scope="col" id="border"><div align="center">Inc</div></th>';
echo '<th width="53" class="style0" scope="col" id="border"><div align="center">Total</div></th>';
echo '<th width="81" class="style0" scope="col" id="border"><div align="center">Total P/Cartão</div></th>';
echo '</tr>';

if ($_GET['id'])
{
$upd="SELECT iduser FROM tbl_utilizador WHERE iduser='".$_GET['id']."'";
mysql_query($upd, $con);
}

$sel3="SELECT a.*, b.* FROM tbl_utilizador a, tbl_custo b WHERE a.iduser=b.iduser ORDER BY a.ref ASC";

$result3=mysql_query($sel3, $con) or die ("Error in query: $sel3".mysql_error());
#echo $sel3;

while ($row=mysql_fetch_array($result3))
{
echo'<tr bgcolor="#CCCCFF" class="formI">';
echo'<th height="27" class="style3" scope="row" id="border"><div align="justify">';
echo $row['utilizador'];
echo'&nbsp;</div></th>';
echo'<th class="style3" id="border" bgcolor="#FFFFFF"><div align="justify">';
?>
<a href="#" class="style6" onClick="window.open('custouser.php?id=<?=$row['iduser'];?>', '_blank', 'width=450 height=250 scrollbars = yes')"><img src="images/euro.jpg" width="16" height="14" border="0"></a> | <img src="images/edit_w.png">&nbsp;</div></th>
<?PHP
echo'<th class="style3" id="border"><div align="justify">';
echo $row['ref'];
echo'&nbsp;</div></th>';
echo'<th class="style3" id="border"><div align="justify">';
echo $row['cc'];
echo'&nbsp;</div></th>';
echo '<th class="style3" id="border"><div align="justify">';
echo $row['matricula'];
echo '&nbsp;</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">Gasolina:</div>';
echo '<div align="right" id="border">';
echo 'Gasoleo:</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($custo,2);
echo '€';
echo '</div>';
echo '<div align="right" id="border">';
echo number_format($custod,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($desc,2);
echo '€';
echo '</div>';
echo '<div align="right" id="border">';
echo number_format($descd,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($iva21,2);
echo '€';
echo '</div>';
echo '<div align="right" id="border">';
echo number_format($iiva21,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">&nbsp;</div>';
echo '<div align="right" id="border">';
echo number_format($ivad,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($inc,2);
echo '€';
echo '</div>';
echo '<div align="right" id="border">';
echo number_format($iinc,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($total,2);
echo '€';
echo '</div>';
echo '<div align="right" id="border">';
echo number_format($ttotal,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($totalc,2);
echo '€';
echo '</div></th>';

###### Aqui estão as formulas para calculo do custo e desconto ########
$custo=$row['custo'];
$custod=$row['custod'];
$desc=$row['desconto'];
$descd=$row['descontod'];
$iva21=($custo-$desc)*21/121;
$iiva21=($custod-$descd)*21/121;
$ivad=$iiva21/2;
$inc=$custo-$desc;
$iinc=$custod-$descd-$ivad;
$total=$inc;
$ttotal=$ivad+$iinc;
$totalc=$custo+$custod;
###############################################################
}
echo '</table>';
echo '</body>';
echo '</html>';


Se alguem me podesse ajudar nesta situação agredecia muito....
peço desculpa pelo post do codigo muito grande :S
kugasthelast
Aprendiz
Aprendiz
 
Mensagens: 71
Registado: Quinta Jul 19, 2007 14:31

Mensagempor SkylineGTR » Quinta Jul 19, 2007 15:58

Sinceramente nem olhei para o código php, pois penso que a resolução do teu problema está na alteração da query que fazes a base de dados.
Experimenta esta query:

Código: Seleccionar todos
SELECT a.*, b.* FROM tbl_utilizador a
LEFT JOIN tbl_custo b ON a.iduser = b.iduser
ORDER BY a.ref ASC
i7 920 | ASUS P6T Deluxe V2 | 6GB Corsair Dominator PC3-12800 | BFG GTX285 OC2 | 2x WD 640GB + WD 750GB + Seagate 750GB + Samsung F1 1TB | Corsair HX-620 | HP w2207 | Lian Li PC-V1110B
SkylineGTR
Membro Vitalício
Membro Vitalício
 
Mensagens: 4184
Registado: Terça Dez 28, 2004 22:26

Mensagempor kugasthelast » Quinta Jul 19, 2007 16:09

LOLOLOL sinceramente este momento foi o momento mais feliz da minha vida nem sei como te agradecer.... SE FOSSES GAJA BEIJAVA-TE CATANO :) realmente...... olha muito obrigado resolveste me o problema k tinha durante estes dois meses quase LOL

GRACIAS e MUITO OBRIGADO

abraços

PS: podem bloquear o tópico eheheh
kugasthelast
Aprendiz
Aprendiz
 
Mensagens: 71
Registado: Quinta Jul 19, 2007 14:31

Mensagempor [PT]CableGuy » Quinta Jul 19, 2007 16:37

Aproveito o tópico para dar uma dica:

Quando colocas código, convém evidencia-lo.Para tal basta fazeres o seguinte:


[code ] código [/code ] (os espaços dentro das chavetas são apenas para o exemplo.

E ficaria algo do género: (nota: sem os espaços dentro das chavetas)
Código: Seleccionar todos
<?php
session_start();
require_once 'includes/connect.php';
require_once 'includes/header.php';
if(!$_SESSION['SID'] && !$_SESSION['idlog'])
{
#error_log('FILES!!!');
header('Location: index.php');
}
?>
<html>
<head>
<link rel="stylesheet" type="text/css" href="..includes/styles_sms.css" >
<style type="text/css">
<!--
#bodyT{
background-image:url(images/barra.png);
text-align: center;
vertical-align:middle;
font-size: 9;
}
.style6 {font-size: 12}
-->
</style>
<title>..::Factura::..</title>
</head>
<body>
<?php
echo '<br></br>';
echo '<br></br>';
echo '<br></br>';
echo '<br></br>';
echo '<table width="100%" id="bodyT" class="bodyturma">';
echo '<tr>';
echo '<th class="style2" scope="col">Combustível</th>';
echo '</tr>';
echo '</table>';
echo '<table width="100%" align="center" class="bodyturma">';
echo '<tr class="formI">';
echo '<th width="105" class="style0" scope="col" id="border"><div align="center">Utilizador</div></th>';
echo '<th width="57" class="style0" scope="col" id="border"><div align="center">Acção</div></th>';
echo '<th width="62" class="style0" scope="col" id="border"><div align="center">Nº de Cartão</div></th>';
echo '<th width="40" class="style0" scope="col" id="border"><div align="center">CC</div></th>';
echo '<th width="78" class="style0" scope="col" id="border"><div align="center">Matricula</div></th>';
echo '<th width="94" class="style0" scope="col" id="border"><div align="center">Combustível</div></th>';
echo '<th width="56" class="style0" scope="col" id="border"><div align="center">Custo</div></th>';
echo '<th width="76" class="style0" scope="col" id="border"><div align="center">Desconto</div></th>';
echo '<th width="54" class="style0" scope="col" id="border"><div align="center">Iva 21%</div></th>';
echo '<th width="56" class="style0" scope="col" id="border"><div align="center">Iva Ded.</div></th>';
echo '<th width="50" class="style0" scope="col" id="border"><div align="center">Inc</div></th>';
echo '<th width="53" class="style0" scope="col" id="border"><div align="center">Total</div></th>';
echo '<th width="81" class="style0" scope="col" id="border"><div align="center">Total P/Cartão</div></th>';
echo '</tr>';

if ($_GET['id'])
{
$upd="SELECT iduser FROM tbl_utilizador WHERE iduser='".$_GET['id']."'";
mysql_query($upd, $con);
}

$sel3="SELECT a.*, b.* FROM tbl_utilizador a, tbl_custo b WHERE a.iduser=b.iduser ORDER BY a.ref ASC";

$result3=mysql_query($sel3, $con) or die ("Error in query: $sel3".mysql_error());
#echo $sel3;

while ($row=mysql_fetch_array($result3))
{
echo'<tr bgcolor="#CCCCFF" class="formI">';
echo'<th height="27" class="style3" scope="row" id="border"><div align="justify">';
echo $row['utilizador'];
echo'&nbsp;</div></th>';
echo'<th class="style3" id="border" bgcolor="#FFFFFF"><div align="justify">';
?>
<a href="#" class="style6" onClick="window.open('custouser.php?id=<?=$row['iduser'];?>', '_blank', 'width=450 height=250 scrollbars = yes')"><img src="images/euro.jpg" width="16" height="14" border="0"></a> | <img src="images/edit_w.png">&nbsp;</div></th>
<?PHP
echo'<th class="style3" id="border"><div align="justify">';
echo $row['ref'];
echo'&nbsp;</div></th>';
echo'<th class="style3" id="border"><div align="justify">';
echo $row['cc'];
echo'&nbsp;</div></th>';
echo '<th class="style3" id="border"><div align="justify">';
echo $row['matricula'];
echo '&nbsp;</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">Gasolina:</div>';
echo '<div align="right" id="border">';
echo 'Gasoleo:</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($custo,2);
echo '€';
echo '</div>';
echo '<div align="right" id="border">';
echo number_format($custod,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($desc,2);
echo '€';
echo '</div>';
echo '<div align="right" id="border">';
echo number_format($descd,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($iva21,2);
echo '€';
echo '</div>';
echo '<div align="right" id="border">';
echo number_format($iiva21,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">&nbsp;</div>';
echo '<div align="right" id="border">';
echo number_format($ivad,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($inc,2);
echo '€';
echo '</div>';
echo '<div align="right" id="border">';
echo number_format($iinc,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($total,2);
echo '€';
echo '</div>';
echo '<div align="right" id="border">';
echo number_format($ttotal,2);
echo '€';
echo '</div></th>';
echo '<th class="style3" id="border">';
echo '<div align="right" id="border">';
echo number_format($totalc,2);
echo '€';
echo '</div></th>';

###### Aqui estão as formulas para calculo do custo e desconto ########
$custo=$row['custo'];
$custod=$row['custod'];
$desc=$row['desconto'];
$descd=$row['descontod'];
$iva21=($custo-$desc)*21/121;
$iiva21=($custod-$descd)*21/121;
$ivad=$iiva21/2;
$inc=$custo-$desc;
$iinc=$custod-$descd-$ivad;
$total=$inc;
$ttotal=$ivad+$iinc;
$totalc=$custo+$custod;
###############################################################
}
echo '</table>';
echo '</body>';
echo '</html>';


Fica "mais bonito" assim. :wink:
[PT]CableGuy
Gurus
Gurus
 
Mensagens: 1845
Registado: Domingo Mai 30, 2004 16:26

Mensagempor kugasthelast » Quinta Jul 19, 2007 16:46

olha agr aconteceu-me uma cena lolol nao consigo enviar o nº do iduser para a outra pagina para a qual tenho que enviar a info para o utilizador....

eu utilizo este para enviar:
Código: Seleccionar todos
if ($_GET['id'])
   {
   $upd="SELECT iduser FROM tbl_utilizador WHERE iduser='".$_GET['id']."'";
   mysql_query($upd, $con);
   }
kugasthelast
Aprendiz
Aprendiz
 
Mensagens: 71
Registado: Quinta Jul 19, 2007 14:31

Mensagempor kugasthelast » Quinta Jul 19, 2007 17:02

e o que recebe que neste caso é noutra pagina é o seguinte:

Código: Seleccionar todos
<?PHP         
   $user=$_GET['id'];
   $sel2="SELECT iduser, utilizador FROM tbl_utilizador WHERE iduser='$iduser'";
   #echo $sel2;
   #echo $_GET['id'];
   
   $result2=mysql_query($sel2, $con) or die ("Error in query:" . mysql_error());
   $row=mysql_fetch_array($result2);
?>
kugasthelast
Aprendiz
Aprendiz
 
Mensagens: 71
Registado: Quinta Jul 19, 2007 14:31

Mensagempor scroll » Quinta Jul 19, 2007 18:34

boas,
não seise percebi bem a tua questão, mas talvez se tentares:

header("Location:pagina.php?iduser=$iduser");

do outro lado fazes, obviamente:

$iduser=$_GET['iduser'];

abraço,
Imagem
Imagem
scroll
Aprendiz
Aprendiz
 
Mensagens: 50
Registado: Sexta Mai 11, 2007 9:55

Mensagempor kugasthelast » Sexta Jul 20, 2007 8:25

não esta a dar certo :S!!!
kugasthelast
Aprendiz
Aprendiz
 
Mensagens: 71
Registado: Quinta Jul 19, 2007 14:31

Mensagempor kugasthelast » Sexta Jul 20, 2007 8:47

foi desde que meti o LEFT JOIN coisa k nao me queixo prk necessito lol mas tb preciso deste nº id para enviar para a outra pagina para identificar o nome do utilizador a quem tou a lançar informação e claro tb preciso deste nº de id para gravar na BD!!! neste momento so keria que enviasse o nº de id de uma pagina pa outra.

Abraço :)
kugasthelast
Aprendiz
Aprendiz
 
Mensagens: 71
Registado: Quinta Jul 19, 2007 14:31

Mensagempor kugasthelast » Sexta Jul 20, 2007 10:52

aaah eskeci-me do link que pega no nº id e envia para outra pagina para pegar outra vez:

Código: Seleccionar todos
<a href="#" class="style6" onClick="window.open('custouser.php?id=<?=$row['iduser'];?>', '_blank', 'width=450 height=250 scrollbars = yes')"><img src="images/euro.jpg" width="16" height="14" border="0"></a>
kugasthelast
Aprendiz
Aprendiz
 
Mensagens: 71
Registado: Quinta Jul 19, 2007 14:31


Voltar para Programação

Quem está ligado:

Utilizadores a ver este Fórum: Nenhum utilizador registado e 0 visitantes

cron