Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Douglas Fernandess

Site carregando paginas com ajax com ligacao BD

Recommended Posts

Bom galera me baseando em vários tutoriais que encontrei pela internet fiz um sistema que carrega as paginas via ajax, porém só consegue fazer conexão na primeira página quando vai muda para outra ele pega a imagem mais da erro de conexão, sendo que já inclui a conexão na página.

 

LINK--->SITE AQUI

 

Como eu não entendo muito de ajax, queria saber se alguém poderia me da uma ajudar o Código abaixo:

 

 

INDEX.PHP

 

 <ul id="menu">
           <li><a href="home.php">Inicio</a></li>
           <li><a href="quem-somos.php">Quem Somos</a></li>
           <li><a href="produtos.php">Produtos</a></li>
           <li><a href="servicos.php">Serviços</a></li>
           <li><a href="contato.php">Contato</a></li>
       </ul>
</div>

</div><!--menu-->


  <div id="conteudo">   
    <img src="images/2-0.gif" id="carregando" />
      <?php include("arquivos/home.php"); ?>
   </div>

 

 

Arquivo que carrega as páginas via AJAX

 

AJAX.JS

 

$(function(){
     $("#carregando").hide();

        $("ul#menu a").click(function(){
           pagina = "arquivos/"+$(this).attr('href')

           $("#carregando").ajaxStart(function(){
              $(this).show()
              })
           $("#carregando").ajaxStop(function(){
              $(this).hide();

           })

           $("#conteudo").load(pagina);
           return false;
        })
})

 

 

ARQUIVO HOME.PHP

 

 

<div id="content2">
<div id="header2">

<div class="title_header2">01.05.2012</div><!---title_header2-->

</div><!---header2-->
<BR /><center><img class="kapa" src="img/POST.jpg" /></center>

<div class="music">


<?php

$sel_musicas = mysql_query("SELECT	titulo, url, id, id2 FROM musica ORDER BY titulo ASC") or die(mysql_error());

if(@mysql_num_rows($sel_musicas) <= '0'){

  echo "Erro ao selecionar as músicas!";	

}else{

$numero = '0';

    while($res_musicas=mysql_fetch_array($sel_musicas)){

	$titulo = $res_musicas[0];
	$url = $res_musicas[1];
	$id = $res_musicas[2];
	$id2 = $res_musicas[3];


?>

<div class="mp3title" onclick="HideShow('<?php echo $url; ?>')">» <?php echo $titulo; ?></div>
<div id="<?php echo $url; ?>" style="display: none;"><a rel="nofollow" href="<?php echo $url; ?>" target="_blank"><img src="img/download.png" alt="Pobierz plik" /></a><script type="text/javascript">var zippywww="<?php echo $id; ?>";var zippyfile="<?php echo $id2; ?>";var zippytext="#e3e3e3";var zippyback="#2e2d2e";var zippyplay="#c20202";var zippywidth=550;var zippyauto=true;var zippyvol=100;var zippywave = "#ff0000";var zippyborder = "#2e2d2e";
</script><br />
<script type="text/javascript" src="js/embed_new.js"></script></div>

<?php

 }

}

?>

</div>


</div><!--music-->

 

E outra página de exemplo

 

 

QUEM-SOMOS.PHP

 


<div class="title_header2">01.05.2012</div><!---title_header2-->

</div><!---header2-->
<BR /><center><img class="kapa" src="img/2.jpg" /></center>

<div class="music">


<?php

$conexao = mysql_connect("localhost", "root", "");
$conecta = mysql_select_db("cgi2",$conexao);


$sel_musicas = mysql_query("SELECT	titulo, url, id, id2 FROM musica ORDER BY titulo ASC") or die(mysql_error());

if(@mysql_num_rows($sel_musicas) <= '0'){

  echo "Erro ao selecionar as músicas!";	

}else{

$numero = '0';

    while($res_musicas=mysql_fetch_array($sel_musicas)){

	$titulo = $res_musicas[0];
	$url = $res_musicas[1];
	$id = $res_musicas[2];
	$id2 = $res_musicas[3];


?>

<div class="mp3title" onclick="HideShow('<?php echo $url; ?>')">» <?php echo $titulo; ?></div>
<div id="<?php echo $url; ?>" style="display: none;"><a rel="nofollow" href="<?php echo $url; ?>" target="_blank"><img src="img/download.png" alt="Pobierz plik" /></a><script type="text/javascript">var zippywww="<?php echo $id; ?>";var zippyfile="<?php echo $id2; ?>";var zippytext="#e3e3e3";var zippyback="#2e2d2e";var zippyplay="#c20202";var zippywidth=550;var zippyauto=true;var zippyvol=100;var zippywave = "#ff0000";var zippyborder = "#2e2d2e";
</script><br />
<script type="text/javascript" src="js/embed_new.js"></script></div>

<?php

 }

}

?>

</div>


</div><!--music-->

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tu faz a conexão dentro dos teus arquivos PHP chamados por ajax (QUEM-SOMOS.PHP, HOME.PHP,etc.)?

 

Para acessar o banco nestes arquivos chamados por ajax é preciso fazer a conexão dentro deles também.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim eu coloquei a conexão na index.php que pega sempre os arquivos.

E já tentei coloca também na página quem-somos.php pra ver se da certo, porém ele conecta mais não fica na mesma página olha nesse link, clica na página quem somos.

 

SITE AQUI

 

Nas outras coloquei os embed's manualmente pra testar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah entendi, ele vai pra outra página por causa do href="pagina.php", cara uma solução simples seria trocar o local onde tu especifica para onde vai a tua página, do href para o rel.

<li><a rel="quem-somos.php" href="#">Quem Somos</a></li>

 

 

Aí no teu js ao invés de pegar o atributo href tu pegaria o rel.

pagina = "arquivos/"+$(this).attr('href')

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom Samuel Volpato, obrigado pela resposta ;)

 

Mais deu no mesmo erro :/

 

Cara fiz um outro site rapidão aqui só para teste e funcionou porém o embed não carrega agora,

 

LINK ---> SITE AQUI

 

o embed seria esse script ---> <script src="http://api.zippyshare.com/api/embed_new.js" type="text/javascript">

 

tentei pega ele direto no banco de dados o endereço do link, mais não deu certo

 

<center><script type="text/javascript">
var zippywww="<?php echo $id; ?>";var zippyfile="<?php echo $id2; ?>";var zippytext="#000000";var zippyback="#e8e8e8";var zippyplay="#1818c2";var zippywidth=450;var zippyauto=false;var zippyvol=100;var zippywave = "#000000";var zippyborder = "#cccccc";
</script>
<b><center><?php echo $titulo; ?></center></b><script src="http://api.zippyshare.com/api/embed_new.js" type="text/javascript">
</script></center>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, não tenho certeza se da pra fazer isso por ajax:

 

<script src="http://api.zippyshare.com/api/embed_new.js" type="text/javascript">

 

Eu acho que não funciona, sei que da pra utilizar funções javascript normalmente, agora incluir um arquivo js eu creio que não.

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara meio tenso você colcou o ajax mais nao colocou da forma certa tipo para que o ajax funcione ele precisa de uma id para o caaregamento de outra pagina sem o site ser carregado novamente bom vamos lá tenta te da uma ajuada

 

 

 

seu menu ficara assim

 

 

<ul id="menu">

<li><a href="javascript:void(0);" onClick=" Load ( 'carregar.php?pagina=inicio' , 'conteudo' , 'GET' );">Inicio</a></li>

<li><a href="javascript:void(0);" onClick=" Load ( 'carregar.php?pagina=quemsomos' , 'conteudo' , 'GET' );">Quem Somos</a></li>

<li><a href="javascript:void(0);" onClick=" Load ( 'carregar.php?pagina=produtos' , 'conteudo' , 'GET' );">Produtos</a></li>

<li><a href="javascript:void(0);" onClick=" Load ( 'carregar.php?pagina=servicos' , 'conteudo' , 'GET' );">Serviços</a></li>

<li><a href="javascript:void(0);" onClick=" Load ( 'carregar.php?pagina=contato' , 'conteudo' , 'GET' );">Contato</a></li>

</ul>

</div>

 

 

bom agora você precisa da pagina carregar.php que ficara assim

 

<?

switch(@$_GET['pagina']) {

case 'inicio': include 'paginas/inicio.php'; break;

case 'cadastro' : include 'paginas/quemsomos.php'; break;

case 'sobre' : include 'paginas/produtos.php'; break;

case 'sobre' : include 'paginas/servicos.php'; break;

case 'sobre' : include 'paginas/contato.php'; break;

 

}

?>

 

crie uma pasta paginas e coloque as paginas do menu dentro dela Exemplo a pagina inicio.php

 

 

 

agora codigo ajax

 

ajax.js

function extraiScript(texto){

var ini, pos_src, fim, codigo, texto_pesquisa;

var objScript = null;

texto_pesquisa = texto.toLowerCase()

ini = texto_pesquisa.indexOf('<script', 0)

while (ini!=-1){

var objScript = document.createElement("script");

pos_src = texto_pesquisa.indexOf(' src', ini)

ini = texto_pesquisa.indexOf('>', ini) + 1;

if (pos_src < ini && pos_src >=0){

ini = pos_src + 4;

fim = texto_pesquisa.indexOf('.', ini)+4;

codigo = texto.substring(ini,fim);

codigo = codigo.replace("=","").replace(" ","").replace("\"","").replace("\"","").replace("\'","").replace("\'","").replace(">","");

objScript.src = codigo;

}else{

fim = texto_pesquisa.indexOf('</script>', ini);

codigo = texto.substring(ini,fim);

objScript.text = codigo;

}

document.body.appendChild(objScript);

ini = texto.indexOf('<script', fim);

objScript = null;

}

}

 

function returnQuery(form){

var elements = form.elements;

var fields = null;

for (var i = 0; i < elements.length; i++) {

if ((name = elements.name) && (value = elements.value)){

if(i == 0){

fields = name + "=" + encodeURIComponent(value);

} else {

fields += "&"+(name + "=" + encodeURIComponent(value));

}

}

}

//alert (fields);

return fields;

}

 

function Form(idForm) {

var elementosFormulario = document.getElementById(idForm).elements;

var qtdElementos = elementosFormulario.length;

var queryString = "";

var elemento;

this.ConcatenaElemento = function(nome,valor) {

if (queryString.length>0) {

queryString += "&";

}

queryString += encodeURIComponent(nome) + "=" + encodeURIComponent(valor);

};

for (var i=0; i<qtdElementos; i++) {

elemento = elementosFormulario;

if (!elemento.disabled) {

switch(elemento.type) {

case 'text': case 'password': case 'hidden': case 'textarea':

this.ConcatenaElemento(elemento.name,elemento.value);

break;

case 'select-one':

if (elemento.selectedIndex>=0) {

this.ConcatenaElemento(elemento.name,elemento.options[elemento.selectedIndex].value);

}

break;

case 'select-multiple':

for (var j=0; j<elemento.options.length; j++) {

if (elemento.options[j].selected) {

this.ConcatenaElemento(elemento.name,elemento.options[j].value);

}

}

break;

case 'checkbox': case 'radio':

if (elemento.checked) {

this.ConcatenaElemento(elemento.name,elemento.value);

}

break;

}

}

}

return queryString;

}

 

function Load(url, div, tipo, campos)

{

var ajax = null;

if(window.ActiveXObject)

ajax = new ActiveXObject('Microsoft.XMLHTTP');

else if(window.XMLHttpRequest)

ajax = new XMLHttpRequest();

 

 

if(ajax != null)

{

var cache = new Date().getTime();

ajax.open(tipo, url + "&cache=" + cache , true);

ajax.onreadystatechange = function status()

{

if(ajax.readyState == 4)

{

if(ajax.status == 200)

{

document.getElementById(div).innerHTML = ajax.responseText;

var texto=unescape(ajax.responseText);

extraiScript(texto);

}

}

else if(ajax.readyState == 0)

document.getElementById(div).innerHTML = '<center><img src="images/load.gif" /></center>';

else if(ajax.readyState == 3)

document.getElementById(div).innerHTML = '<center><img src="images/load.gif" /></center>';

else

document.getElementById(div).innerHTML = '<center><img src="images/load.gif" /></center>';

}

 

if(tipo == "POST"){

ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");

ajax.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");

ajax.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");

ajax.setRequestHeader("Pragma", "no-cache");

ajax.send(campos);

}

else {

ajax.send(null);

}

}

 

}

function Open(pagina)

{

Load(pagina, "content", "GET");

}

 

var req;

 

function validarDados(campo, valor) {

 

if(window.XMLHttpRequest) {

req = new XMLHttpRequest();

}

// Internet Explorer

else if(window.ActiveXObject) {

req = new ActiveXObject("Microsoft.XMLHTTP");

}

var url = "validacao.php?campo="+campo+"&valor="+valor+"&email="+email;

req.open("Get", url, true);

req.onreadystatechange = function() {

if(req.readyState == 1) {

document.getElementById('campo_' + campo + '').innerHTML = '<font color="gray">Verificando...</font>';

}

if(req.readyState == 4 && req.status == 200) {

var resposta = req.responseText;

document.getElementById('campo_'+ campo +'').innerHTML = resposta;

}

}

req.send(null);

}

function validarDadosDois(campo, valor, email) {

 

if(window.XMLHttpRequest) {

req = new XMLHttpRequest();

}

 

else if(window.ActiveXObject) {

req = new ActiveXObject("Microsoft.XMLHTTP");

}

 

var url = "ajax/validacao.php?campo="+campo+"&valor="+valor+"&email="+email;

req.open("Get", url, true);

req.onreadystatechange = function() {

if(req.readyState == 1) {

document.getElementById('campo_' + campo + '').innerHTML = '<font color="gray">Verificando...</font>';

}

if(req.readyState == 4 && req.status == 200) {

var resposta = req.responseText;

document.getElementById('campo_'+ campo +'').innerHTML = resposta;

}

 

}

 

req.send(null);

 

}

 

 

Bom onde você colocou

 

 

<div id="conteudo">

<img src="images/2-0.gif" id="carregando" />

<?php include("arquivos/home.php"); ?>

</div>

 

vamu da uma mudada mude

 

<div id="conteudo">

<? $center = $_REQUEST['pagina'];

if($center == '')

{$center = 'inicio';}?>

<? if(file_exists('paginas/' . $center . '.php'))

{require('paginas/' . $center . '.php');}

else{require('paginas/404.php'); }?>

</div>

 

 

proto seu ajax ja esta funcionando espero te ajudado duvidas veja meu msn no perfil e adicione:)

Compartilhar este post


Link para o post
Compartilhar em outros sites

amigo seria melhor se tu pegasse um player list com xml ficaria mais facil de ver as musicas ow entao coloca um player swf tocando a musicas e o link de download se tiver por painel :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.