Mensagens - =IceBurn=

Páginas: 1 ... 59 60 61
901
Citação de: "morpheus"
se a variavel do nº de páginas for $npages, porque não usas um
Código: [Seleccione]
$npages=number_format($npages,0);
que te transforma o número decimal num inteiro?



:roll:
....será que dava p exemplificares isso no código?
Thanks!

902
Estou a trabalhar num script em php para o meu site, está tudo a funcionar bem, só que não sei como fazer uma divisão essencial...
Aqui vai o código para perceberem do que estou a falar:

<?

//IceBurn (c) 2006

$conf["items_per_page"] = 10;
header("Content-type: text/vnd.wap.wml; charset=ISO-8859-1");
echo "<?xml version=\"1.0\"?>";
echo "<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\""." \"http://www.wapforum.org/DTD/wml_1.1.xml\">";
if (!isset($page)) {$page = 0;}
$total = 0;
if(!($dp = opendir("./"))) die ("Cannot open ./");
$file_array = array();
while ($file = readdir ($dp))
{
if(substr($file,0,1) != '.' and $file != "index.php")
{
$file_array[] = $file;
}
}
$file_count = count ($file_array);
sort ($file_array);
?>
<wml>
<card id="card1" title="xxxxxxx &#xa9; AMR">
<p align="center">
<small><b>xxxxxxx</b><br/>
-AMR RingTones-<br/></small></p>
<p align="left" mode="nowrap"><br/><small>
<?
if ($file_count > 0)
{
$first_record = $page * $conf["items_per_page"];
$last_record = $first_record + $conf["items_per_page"];
while (list($fileIndexValue, $file_name) = each ($file_array))
{
if (($fileIndexValue >= $first_record) AND ($fileIndexValue < $last_record))
{
echo "<a href=\"$file_name\"><img src=\"/imgs/amr.gif\" alt=\"·\"/>$file_name</a> (". round(filesize($file_name)/1024,1) . "kb)<br/>";
$total = $total + filesize($file_name);
}
}
echo "<br/></small></p><p align=\"left\"><small>";
if (($file_count > 0) AND ($page != 0))
{
// previous button
$prev_page = $page -1;
echo "<a href=\"".$_SERVER["PHP_SELF"]."?page=$prev_page\">[« Prev.]</a><b>|</b>";
}

if (($file_count > 0) AND ($last_record < $file_count))
{
// next button
$next_page = $page + 1;
echo "<b>|</b><a href=\"".$_SERVER["PHP_SELF"]."?page=$next_page\">[Next »]</a><br/>";
}
print "Page $page of
????????[/color]</small><br/>";

if($file_count>$conf["items_per_page"])print "<small>Jump to Page:</small><input emptyok=\"true\" name=\"q\" format=\"*N\" size=\"2\" value=\"\"/><small><a href=\"".$_SERVER["PHP_SELF"]."?page=$(q)\">[Go]</a></small><br/>";

echo "<small><a href=\"http://xxxxxxxxxxx\">[^ Downloads]</a>";
echo "<br/><b>Now $file_count ";
if ($file_count == 1)
{echo "AMR File!";}
else
{echo "AMR Files!";}

echo "</b><br/><a href=\"http://xxxxxxxxxxx\">[:HOME:]</a><br/>";
echo "</small></p><p align=\"center\">";

}
closedir($dp);

echo "<br/>";

?>
<small><b>&#xa9;<a href="http://xxxxxxxxxx">IceBurn</a></b></small>  
</p>
</card>
</wml>
[/color]

Como podemm reparar eu trabalho com páginas WML (WAP) com PHP integrado.

Portanto, este código põe-me todos os ficheiros que tenho no mesmo directório nesta página, sendo que a mesma depois me vai apenas mostrar apenas os ficheiros que eu quiser de cada vez, neste caso tenho a variável programada para 10.
Isto depois vai criar as famosas
index.php?page=1
index.php?page=2
index.php?page=3

...etc.
Agora o que eu pretendia ere uma parte de código que vai dar a informação  ao utilizador que existem um certo número de páginas.
É o que pretendo para por onde coloquei os "????????"

Ficaria por exemplo "Page 1 of 20".

O resultado seria o $file_count a dividir por $conf["items_per_page"] mas que não me desse valores tipo 12,3 tem que ser um número certo mesmo que eu tenha 53 ficheiros. Seria fácil se tivesse 60, pois isso daria 6 páginas neste caso, não sei se me faço entender....

Alguem que me saiba dizer como fazer isto?

Desde já muito obrigado.

903
Pode ser k seja alguma incompatibilidade com o WML e a sua integração com o php, ou até mesmo do servidor, não sei...
Ou então simplesmente não dei tempo suficiente para o FTP fazer o upload no servidor, o k eu duvido... quando vi a página em branco fiz refresh umas 4 ou 5 vezes e nada, a não ser o branco, claro LoL
Tipo, não podia deixar o chat offline e apressei-me a por tudo como estava.

PS: eu só trabalho com WML, Xhtml e php, já tive um site na web em html, mas apaguei-o.

904
Alterei para ver o resultado com &nbsp; e não funcionou (apareceu-me a página em branco), pelo que mantive o texto normalmente.

905
E se quiseres algo tipo random link fazes o seguinte:

1) crias uma nova pasta e nomeia-la de SCRIPTS por exemplo, não importa.

2) Abres o teu editor de php e inseres o seguinte código:

<?php

$option = "";

$sites[0] = array("http://www.site1.com", "Text1", 5, "images/mypic1.jpg");
$sites[1] = array("http://www.site2.com", "Text2", 2, "images/mypic2.jpg");
$sites[2] = array("http://www.site3.com", "Text3", 0, "images/mypic3.jpg");

$countsites = count($sites);

for($i=0; $i<$countsites; $i++)
   {
   for($x=0; $x<$sites[$i][2]; $x++)
      {
      if($option != null)
         {
         $mylist[] = array($sites[$i][0],$sites[$i][1],$sites[$i][3]);
         }
      else
         {
         echo("Erro ao definir a variavel option.");
         exit();
         }
      }
   }

$countlist = count($mylist);

$countlist = $countlist - 1;

$picker = rand(0, $countlist);

if($option == "link")
   {
   echo("<a href='" . $mylist[$picker][0] . "'>" . $mylist[$picker][1] . "</a>");
   }

else if($option == "banner")
   {
   echo("<a href='" . $mylist[$picker][0] . "'><img src='" . $mylist[$picker][2] . "' alt='" . $mylist[$picker][1] . "'/></a>");
   }

else
   {
   echo("Erro ao definir a variavel option.");
   exit();
   }

?>



3) Agora se quiseres apenas um link que aparece alternadamente editas da seguinte forma:

$option = "link";

$sites[0] = array("http://www.site1.com", "Texto1", 5);
$sites[1] = array("http://www.site2.com", "Texto2", 2);
$sites[2] = array("http://www.site3.com", "Texto3", 1);
$sites[3] = array("http://www.site4.com", "Texto4", 2);


Explicação
... = array("o url do site x", "O título para o site", 5); //o número define a frequencia com que o link vai aparecer, se quiseres que todos apareçam com frequência equivalente põe em todos o número 1.

Podes utilizar multiplos links, eu apenas coloquei 4 para exemplificar, basta continuar com
$sites[4] = array....
$sites[5] = array....
$sites[6] = array....
Etc....


Outra opção é utilizar o mesmo código mas para banners, pelo que neste caso iria ficar assim:
$option = "banner";

$sites[0] = array("http://www.site1.com", "Texto1", 5,  "http://imagem_do_banner.gif");

$sites[1] = array("http://www.site2.com", "Texto2", 2,  "http://imagem_do_banner.gif");

$sites[2] = array("http://www.site3.com", "Texto3", 1,  "http://imagem_do_banner.gif");

$sites[3] = array("http://www.site4.com", "Texto4", 2,  "http://imagem_do_banner.gif");


resumindo, basta acrescentar o URL da imagem.

4) Salvas isto como randomlink.php e metes na pasta SCRIPTS ou o que quer que seja que lhe tenhas chamado.

5) Por fim, em todas as páginas em que queiras utilizar isto pões

<?php require("/SCRIPTS/randomlink.php"); ?>

e tá feito! :)

PS: Se já sabias como fazer isto, e não é novidade nenhuma para ti, pelo menos sempre fica o tutorial para quem não sabia. De qualquer forma esta não é a única forma para criar um random link, mas é a que uso.

906
Obrigado Morpheus.
No entanto esqueci-me de dizer que mudei de "estratégia" e quero que quando um utilizador do chat tentar inserir um URL, apareça apenas o meu texto (que neste caso é "LiveChat - The Right Place To Be!") sem link nenhum.  
Agora a minha dúvida é se neste caso em concreto está teoricamente correcto inserir o meu texto com os respectivos espaços...

Questiono-me se terei que utilizar algo como UM_TEXTO_ASSIM, ou UM%20TEXTO%20ASSIM, ou UM&nbsp;TEXTO&nbsp;ASSIM....
Não sei se me faço entender... :roll:
Eu penso tá correcto como eu meti, porque não me deu erro, mas gostava de uma certeza vinda de um expert como tu.

907
Morpheus. alterei o código da seguinte forma:

Citar
$udata[2] = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)','LiveChat - The Right Place To Be!', $udata[2]);
        $udata[2] = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_\+.~#?&//=]+)','LiveChat - The Right Place To Be!', $udata[2]);


Achas que tá correcto assim?

908
Citação de: "OFFICER"
Não chamaria cliente mas sim um utilizador assíduo, pois aqui não se vende nada, dá-se!  :lol:


Sim, daí as " " na  palavra cliente.  :wink:

909
Obrigado a todos.
É bom saber que existe aqui um grupo de pessoas a ajudarem-se mútuamente.
Continuem com o bom trabalho e contem com mais um "cliente" assíduo do +Tráfego.
 8)

910
Obrigado morpheus! :wink:
Infelizmente o servidor k aloja o meu site tá a ser vítima de um ataque DDoS e não consigo aceder, logo k a situação  estiver resolvida faço a alteração.

911
Pois... mas em pt.php.net não encontrei nada de mais, apenas como fazer o que eu ja sei.

Esperava uma resposta mais esclarecedora acerca do assunto.  
:roll:

Alguem sabe?

912
Boas! Tenho um script de chat em php que contem o seguinte código:

Citar
$udata[2] = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)','<a href="\\1">\\1</a>', $udata[2]);

        $udata[2] = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_\+.~#?&//=]+)','\\1<a href="http://\\2">\\2</a>', $udata[2]);


Para quem não reparou, é o exerto do código em que quando um utilizador na sala de chat escreve um URL, este aparece como um link.

A minha dúvida é a seguinte:
     Como é que faço para que apareça um link predefinido por mim (por exemplo para a minha página principal) ou até mesmo um texto, em vez de aparecer o link que o utilizador escreveu?

Será que me basta alterar a parte '<a href="\\1">\\1</a>', $udata[2]); e  '\\1<a href="http://\\2">\\2</a>', $udata[2]);

Agradecia imenso a ajuda!

Páginas: 1 ... 59 60 61