Estou batendo cabeça a 3 dias para desvendar o porque não consigo através do formulário fazer uma pesquisa no banco e dar ao usuário a opção de como quer ordernar os dados.
Logo abaixo segue o script para menciono onde está o erro.
<?php
require_once("members.php");
include("funcoes.php");
mssql_connect("localhost", "senha", "password") or die(mssql_error());
mssql_select_db("portabilidade") or die(mssql_error());
die('<p align=right style=position:absolute;left:auto;top:80px;height:40px;wight:270px;font-family:Courier New;font-size:15px;color:#000080">You must select RN or TN</p>');
}
else{*/
//$re = mssql_query("SELECT * FROM portabilidade where convert(varchar(10) subscription_activation_timestamp,111) between convert(varchar(10)'$datainitial') and convert(varchar(10)'$datafinal') ORDER BY subscription_tn;")or die(mssql_error());
$re = mssql_query ("SELECT * FROM portabilidade WHERE CONVERT(VARCHAR(50),subscription_activation_timestamp,111) BETWEEN CONVERT(VARCHAR(50),'$datainitial',111) AND CONVERT(VARCHAR(50),'$datafinal',111) order by '$ordenar' ASC");
$line = mssql_num_rows($re); A variável ordenar deveria dar opção ao usuário por quais dados quer ordenar
if ($line === 0){
die('<p align=center style="position:static;top:80px;height:40px;wight:270px;font-family:Courier New;font-size:15px;color:#000080">No Record was found on Database.</p>');
Pergunta
Ricardo Nogueira
Pessoal boa tarde.
Estou batendo cabeça a 3 dias para desvendar o porque não consigo através do formulário fazer uma pesquisa no banco e dar ao usuário a opção de como quer ordernar os dados.
Logo abaixo segue o script para menciono onde está o erro.
<?php
require_once("members.php");
include("funcoes.php");
mssql_connect("localhost", "senha", "password") or die(mssql_error());
mssql_select_db("portabilidade") or die(mssql_error());
$datainitial = "{$_POST["ano1"]}-{$_POST["mes1"]}-{$_POST["dia1"]}";
$datafinal = "{$_POST["ano2"]}-{$_POST["mes2"]}-{$_POST["dia2"]}";
$_POST['ordenar[]'];
//$order = "Order By '".$ordenar."' ASC";
if (isset ($_POST['submit']))
{
echo "$ordenar\n";
echo "Searching from\n";
echo $datainitial;
echo "\nto\n";
echo $datafinal;
/*if (!$_POST['datainitial'] & !$_POST['datafinal']) {
die('<p align=right style=position:absolute;left:auto;top:80px;height:40px;wight:270px;font-family:Courier New;font-size:15px;color:#000080">You must select RN or TN</p>');
}
else{*/
//$re = mssql_query("SELECT * FROM portabilidade where convert(varchar(10) subscription_activation_timestamp,111) between convert(varchar(10)'$datainitial') and convert(varchar(10)'$datafinal') ORDER BY subscription_tn;")or die(mssql_error());
$re = mssql_query ("SELECT * FROM portabilidade WHERE CONVERT(VARCHAR(50),subscription_activation_timestamp,111) BETWEEN CONVERT(VARCHAR(50),'$datainitial',111) AND CONVERT(VARCHAR(50),'$datafinal',111) order by '$ordenar' ASC");
$line = mssql_num_rows($re); A variável ordenar deveria dar opção ao usuário por quais dados quer ordenar
if ($line === 0){
die('<p align=center style="position:static;top:80px;height:40px;wight:270px;font-family:Courier New;font-size:15px;color:#000080">No Record was found on Database.</p>');
}else
{
?>
<table width="75%" border="0" align=center>
<tr>
<th scope="col" abbr="Number">Number</th>
<th scope="col" abbr="Provider">Provider</th>
<th scope="col" abbr="EOT">EOT</th>
<th scope="col" abbr="SPID">SPID</th>
<th scope="col" abbr="CNL">CNL</th>
<th scope="col" abbr="LNP">Number Type</th>
<th scope="col" abbr="lnp">Type</th>
<th scope="col" abbr="Status">Status</th>
<th scope="col" abbr="Reason">Reason</th>
</tr>
<?php
while($l = mssql_fetch_array($re))
{
$id = $l["portabilidadeID];
$tn = $l["subscription_tn"];
$rn = $l["subscription_rn1"];
//$data = implode("-", array_reverse(explode("-", $l["data_nascimento"])));
$eot = $l["subscription_recipient_eot"];
$spid = $l["subscription_recipient_sp"];
$cnl = $l["subscription_new_cnl"];
$lnp = $l["subscription_lnp_type"];
$line = $l["subscription_line_type"];
$status = $l["status"];
$reason = $l["subscription_download_reason"];
echo "
<tr>
<td> $tn</td>
<td> $rn</td>
<td> $eot</td>
<td> $spid</td>
<td> $cnl</td>
<td> $lnp</td>
<td> $line</td>
<td> $status</td>
<td> $reason</td>
</tr>\n"
;}
}
//}
}
else
{
?>
<form action=<?php echo $_SERVER['PHP_SELF]?>" method="post" align=left>
<h1 align=center style="position:static;font-family:Courier New;color:#000080;font-size:12px;z-index:2" size="16">Searching on Portability Database</h1>
<table width="250" border="0" align="center" cellspancing="0">
<tr>
<tr><td scope="col" abbr="IDate">Initial Date:</td><tr>
<tr><td scope="col" abbr="INIDate">
<?php
//$datainitial = explode('-',$datainitial);
$datainitial = explode ('-', $datainitial);
echo monta_select("ano1", 2000, 2020);
echo monta_select("mes1", 1, 12);
echo monta_select("dia1", 1, 31);
$datainitial = "{$_POST["ano1"]}-{$_POST["mes1"]}-{$_POST["dia1"]}";
?>
</td></tr>
<tr><td>End Date:</td></tr>
<tr><td>
<?php
$datafinal = explode('-',$datafinal);
echo monta_select("ano2", 2000, 2020);
echo monta_select("mes2", 1, 12);
echo monta_select("dia2", 1, 31);
$datafinal = "{$_POST["ano2"]}-{$_POST["mes2"]}-{$_POST["dia2"]}";
?>
</td></tr>
</tr>
<tr>
<tr><td>Order By:</td></tr> Aqui está o option select, já tentei várias formas menos a correta, que não sei.
<tr><td>
<select name=ordenar[]" ">
<option selected value="">Order by</option>
<option select value="ordenar['subscription_tn]">Number</option>
<option select value="ordenar['subscription_rn1']">Provider</option>
<option select value=ordenar['subscription_recipient_eot]">EOT</option>
<option select value="ordenar['subscription_lnp_type']">LNP</option>
<option select value=ordenar['subscription_line_type]">Line</option>
</select>
</td></tr>
</tr>
<tr>
<tr><td>
<input align=center type="submit" name="submit" value="Search" class="decoder" style="border:0;color:#000080;width:76px;height:22px;border:0">
</td></tr>
</tr>
</form>
<?php
}
?>
</body>
</html>
Abraços
Ricardo
Editado por Ricardo NogueiraLink para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.