Jump to content


Danilo Dantas's Content

There have been 13 items by Danilo Dantas (Search limited from 29/03/2023)


Ordernar por                Order  

#887744 Melhorar Query

Posted by Danilo Dantas on 18/12/2007, 14:31 in MySQL

pelo que intendi no codigo do eclesiastes, mesmo que a id nao seja periodica, serao retornados 30 resultados na consulta.
entao se faltar as ids 10267982, 10267985, 10268001 e 10268005, ele vai listar as ids de 10267981 a 10268014.

pra garantir que as ids estarao em sequencia, mesmo que nao seja uma sequencia completa, eh bom colocar um sort by id asc la no final da query.

select * from `teste` where id >= 10267981 sort by 'id' asc limit 30

vlw ^_^


Mas esse código será utilizado numa paginação, ou seja, não tem como eu saber qual a primeira ID da página X.



#887330 Melhorar Query

Posted by Danilo Dantas on 15/12/2007, 23:14 in MySQL

Use:

WHERE id >= 10267981 LIMIT 30


Mas não dá, como eu disse, não tem como eu saber o ID, pq ele não é periódico, tem casos de conteúdo deletado, onde o ID é perdido.



#887132 Melhorar Query

Posted by Danilo Dantas on 14/12/2007, 13:24 in MySQL

Olá!

Estava fazendo uns testes com o MySQL aqui em localhost. Criei uma tabela idiota e adicionei 10 268 082 registros nela.

Mostrando registros 10267980 - 10268009 (10,268,082 total, Consulta levou 7.3155 segundos)
consulta SQL:
SELECT *
FROM `teste`
LIMIT 10267980 , 30

Executando essa query, ele pega os resultados entre os IDs 10267981 e 10268010, mas como se pode ver, demora muito.

Mostrando registros 0 - 29 (30 total, Consulta levou 0.0007 segundos)
consulta SQL:
SELECT *
FROM `teste`
WHERE id >=10267981
AND id <=10268010

Com essa, ele pega os mesmos resultados, porém, muito mais rapidamente.

Minha duvida é seguinte: Vou fazer paginação no meu site, como faço pra pegar, por exemplo, o que eu pegaria usando LIMIT 1000,30 usando algum outro comando SQL? Não da pra fazer usando id > e id < pq minhas ids não são totalmente periódicas, quando deleto algo, a id é perdida, o que atrapalharia a listagem caso eu usasse id > e id <.

[]´s!



#879394 Linha E Arquivo - Function

Posted by Danilo Dantas on 02/11/2007, 20:55 in PHP

bom...

pra tu pegar o local onde roda o código é só usar a variável $HTTP_REFERER, com relação a linha eu não sei como faz... mas uma vez que vc tem o endereço da página qual é, é soh rodá-la, e ver o erro....

tenta essa variável ai, agora não lembra se eh essa ou HTTP_REFER .. fugiu um pouco..

abraços.


$HTTP_REFERER vai pegar a URL, não o arquivo onde o código foi rodado.

Uma maneira não muito prática seria fazer assim:

function coisar($file,$line)
{
echo $file.$line;
}
coisar(__FILE__,__LINE__);

Alguem sabe se tem algum jeito melhor para fazer isso?



#879389 Linha E Arquivo - Function

Posted by Danilo Dantas on 02/11/2007, 19:41 in PHP

O exemplo que dei foi idiota, só pra entender melhor oq eu quero, mas vou usar isso no sistema de erros do meu site, ai ele diria junto à mensagem de erro o arquivo e a linha onde ele ocorreu.



#879387 Linha E Arquivo - Function

Posted by Danilo Dantas on 02/11/2007, 19:23 in PHP

Olá!

Estou com uma pequena dúvida em relação a functions. Como eu faça para pegar o local de onde eu chamei a função?

Por exemplo:

function.php
<?php
function coisar()
{
// codigo que nao sei
}

chamando_funcao.php
<?php
include 'function.php';
coisar();
?>

Oq eu preciso fazer dentro da function coisar () {} pra pegar em qual arquivo e em qual linha ela foi chama? No exemplo, o arquivo seria chamando_funcao.php e a linha 3.

[]´s



#870055 The Planet

Posted by Danilo Dantas on 11/09/2007, 23:50 in Dúvidas Gerais

Que coisa mais complicada... Eu bem que preferia ficar na HostDime, mas um servidor inferior ao que contratei na The Planet fica 70% mais caro nela...



#870046 The Planet

Posted by Danilo Dantas on 11/09/2007, 22:24 in Dúvidas Gerais

Assinei agora um dedicado na The Planet, e no email que me enviaram confirmando o pedido tinha isso:

Now that we have received your order, we will go through a standard process of verifying account information. We will be able to quickly complete the verification process during a phone call that we will place to you within the next 24 hours. We appreciate your availability and cooperation during this important call.

Alguem que já assinou dedicado com eles sabe se mesmo eu morando no Brasil eles vão ligar pra cá?



#860920 Ereg

Posted by Danilo Dantas on 18/07/2007, 22:14 in PHP

Então me desculpe a ignorância, mas você poderia explicar melhor qual o resultado que você quer? Já que não é apenas o nome do arquivo, e nem o caminho completo dele, eu realmente não entendi.


É assim:

$requesturi é a URL acessada. Por exemplo /site/abcd/efgh/nome.html, ai $pdhconfig['site_folder'] é /site/.

$a = ereg_replace('^'.preg_quote($pdhconfig['site_folder']).'*\.html','',$requesturi).''; deveria retornar abcd/efgh/nome

[]´s



#860913 Ereg

Posted by Danilo Dantas on 18/07/2007, 21:46 in PHP

Não sei se ajuda, mas tente a função basename()
http://www.php.net/m...on.basename.php

<?php
$arquivo = basename ($requesturi, ".html");


Infelizmente não ajuda, pois preciso do caminha completo, contido em $requesturi, e não apenas do nome do arquivo :(

[]´s



#860860 Ereg

Posted by Danilo Dantas on 18/07/2007, 18:31 in PHP

$a = ereg_replace('^'.preg_quote($pdhconfig['site_folder']).'*\.html','',$requesturi).'';

Isso deveria pegar $requesturi e tirar $pdhconfig['site_folder'] do começo, e o .html do final, mas não está fazendo nada. Alguem sabe o que pode estar errado? :)

[]´s



#849576 Querystring Vazio

Posted by Danilo Dantas on 19/05/2007, 22:58 in PHP

<?php
if(isset($_GET['logout']))
{
// Seu código de logoff
}

Acho mais pratico assim :D



#820031 Usar Class?

Posted by Danilo Dantas on 25/01/2007, 17:23 in PHP

Eu estou reprogramando meu site, atualmente ele tem um arquivo functions.php com todas as funções globais do site. Agora que to reprogramando, queria saber se em questões de praticidade e velocidade é melhor eu usar uma class que tenha todas as functions ou usar functions normais mesmo.

[]'s




IPB Skin By Virteq