Ir para conteúdo

Arquivado

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

eduardohaag

Salva URL em banco de dados

Recommended Posts

Olá pessoal não conheço praticamente nada em php, mas consigo me virar com exemplos.

Estou precisando criar uma pagina em que ao clicar em um botão seja salvo no banco de dados a URL da pagina e data e hora automaticos, após isso surja um popup informando o sucesso da operação.

 

porém não tenho ideia de como capiturar a URL nem a data e hora para pode salvar. Alguem pode me ajudar. pra vocês conseguirem entender melhor é como se fosse para reportar uma pagina quebrada.

 

Desde já agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

para capturar a url tu pode usar esse comando:

$url = $_SERVER['REQUEST_URI'];
$data = date("Y-m-d H:i:s");

Tu ja tem os dois parametros agora, a url e a data e so criar o insert no BD

$insert = "INSERT INTO tabela (id, url, datahora) VALUES ('$url', '$data')";

depois do insert com sucesso do faz mais ou menos assim no php

<script type="text/javascript">
	alert('Comando executado com sucesso!');
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Otimo, porém não tenho ideia de como colocar isso no botão, eu ja criei a conexao com o banco de dados e criei o arquivo salvar.php onde coloquei essas linhas de codigos que você passou. Porém não sei como colocar isso pra rodar no botão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom consegue execultar mas obtive o seguinte erro

 

Parse error: syntax error, unexpected end of file in /home/u309734181/public_html/eduardo/bc/salva.php on line 10

 

meus coidgos estão assim

 

html:

<a href="salva.php">CRASH</a>

salva.php

<?php
include 'conexao.php';
 
$url = $_SERVER['REQUEST_URI'];
$data = date("Y-m-d H:i:s");
 
$inserir = "INSERT INTO crash(id, url, data) VALUES('$url','$data');
$inserir = mysql_query($inserir) or die (mysql_error());

?>

conexao.php

<?php
$mysql_servidor="mysql.hostinger.com.br";
$mysql_usuario="****";
$mysql_senha="*****";
$mysql_database="****";
 
mysql_connect($mysql_servidor,$mysql_usuario,$mysql_senha) or die(mysql_error());
mysql_select_db($mysql_database) or die(mysql_error());
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

O próprio highlight do código já te mostra o erro. Veja que você esqueceu de fechar as aspas na linha do INSERT

 

Recomendo ler este artigo, com as explicações dos erros mais comuns. O erro do "unexpected end" está explicado ali também

 

 

PS: funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/

Compartilhar este post


Link para o post
Compartilhar em outros sites

De fato foi um erro besta.

Consertei isso mas mesmo assim não funcionou aqui.

Vou tentar explicar melhor o que quero:

 

Estou montando um rotor de faucets (pra quem não conhece serve para conseguir bitcoins em faucets de forma mais rapida).

Ele está hospedado aqui: http://projetouruguai.esy.es/marcos/bc/

funciona basicamente da seguinte maneira: a pessoa tem um captcha pra resolver em cada faucet e após resolvido ela ganha uma pequena quantidade de bitcoins, porém ela só pode resolver o captcha novamente depois de um determinado tempo.

 

Pensando nisso foi criado o rotor, dessa maneira a pessoa só clica no botão "proxima torneira" pra ir para outro faucet, deixando o trabalho mais rapido.

 

As vezes ocorre da faucet estar quebrada ou sem fundo para poder pagar.

O que gostaria é colocar um botão ou hyperlink ao lado dos demais botões da barra superiror para que ao clicar ele salvasse a url da faucet no banco de dados para que eu pudesse conferir depois e caso necessario desativar a url do rotor.

 

Lembrando que meu conhecimento de programação se resume ao amadorismo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consertei isso mas mesmo assim não funcionou aqui.

E o que isso quer dizer?

O que aconteceu? Deu erro? Qual?

Explique o problema...

 

 

Lembrando que meu conhecimento de programação se resume ao amadorismo.

Lembrando que o objetivo do fórum é orientar, e não entregar código pronto :)

 

Caso ainda não tenha lido, dê uma olhada nas Orientações

Compartilhar este post


Link para o post
Compartilhar em outros sites

na verdade, se id é chave primária e auto numeração,
tire a coluna da sql - mas era para ter exibido o erro, aqui exibiu:

 

Column count doesn't match value count at row 1

(deve ser configuração na hospedagem)

 

outro detalhe: não é necessário inserir nem formatar essa data;
defina a coluna como timestamp e valor padrão (default) current_timestamp.

 

dicas boas:

http://www.linhadecodigo.com.br/artigo/75/principais-instrucoes-em-sql.aspx

http://www.linhadecodigo.com.br/artigo/2975/comandos-basicos-em-sql-insert-update-delete-e-select.aspx

Compartilhar este post


Link para o post
Compartilhar em outros sites

Outra coisa, edita tua mensagem sobre a conexão do teu bd urgente... tu postou os dados .. algum moderador edita ai urgente....

 

Coloca para exibir os erros:

 

no script de conexão inseri isso

error_reporting(E_ALL)
ini_set('display_errors', 1);

para desativar depois os erros e fazer

ini_set('display_errors', 0);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela ajuda de todos, mas pelo que percebi quando eu executo aqui ele acaba atualizando a pagina. Sempre que é atualizada a pagina nesse sistema ele volta pra home, e a url que está sendo salva no banco de dados é o da home e não da pagina que a pessoa esta antes de clicar no botão.

 

Não sei se consegui explicar direito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse botão que ao clicar salva redireciona a página

Então, no evento onclick desse botão cria uma function que salva o link da página, ou ainda, cria um <a href> e na pagina que ele vai entrar cria o insert.

Tipo só libera a pagina depois que fizer o insert na página.. se não conseguir inserir retorna para o link... é uma idéia..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom pessoal, eu preciso finalizar esse projeto e não estou com tempo para estudar e tentar aprender.

Por isso estou disposto a pagar caso alguém tenha disponibilidade de fazer para mim.

 

Se algum freelancer estiver disposto é só me chamar

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.