Rui Silva Posted August 6, 2015 at 02:31 PM Report #586737 Posted August 6, 2015 at 02:31 PM boas eu no meu projecto queria fazer uma parte para comentarios de prefis, so que queria fazer em ajax, alguem me pode ajudar? queria que mal clica-se no botao de responder ele aparece-se logo.
fteixeira1993 Posted August 6, 2015 at 04:20 PM Report #586740 Posted August 6, 2015 at 04:20 PM Viva, Aqui fica um ideia 🙂 , o script em ajax já terás que ser tu a fazer digging 😛 (w3schools.com) <button onclick=" função submete e actualiza ">Enviar!</button> cumps, fteixeira1993
Rui Silva Posted August 10, 2015 at 03:26 PM Author Report #586921 Posted August 10, 2015 at 03:26 PM (edited) pois mas a minha questao é como mandar os dados, nao tou a conseguir ja dei uma vista de olhos nesse site mas nao tem nada de mandar os dados por post, quer dizer tem mas nao me esclareceu Edited August 10, 2015 at 03:27 PM by Rui Silva
fteixeira1993 Posted August 10, 2015 at 08:29 PM Report #586936 Posted August 10, 2015 at 08:29 PM pois mas a minha questao é como mandar os dados, nao tou a conseguir ja dei uma vista de olhos nesse site mas nao tem nada de mandar os dados por post, quer dizer tem mas nao me esclareceu (Ajax+PHP) Crias uma função com 1 settime no load da página por exemplo, que seja chamada de X em X tempo onde envias (POST) para o php através de AJAX e o ajax devolve-te a query cumps, fteixeira1993
Rui Silva Posted August 12, 2015 at 12:27 PM Author Report #586971 Posted August 12, 2015 at 12:27 PM (Ajax+PHP) Crias uma função com 1 settime no load da página por exemplo, que seja chamada de X em X tempo onde envias (POST) para o php através de AJAX e o ajax devolve-te a query cumps, fteixeira1993 o problema é que ai esta por get, alguem me mode fazer o scrpit onde envio por post??? pls é que nao tou a conseguir fazer esse script
fteixeira1993 Posted August 13, 2015 at 08:45 AM Report #586988 Posted August 13, 2015 at 08:45 AM Viva, Supostamente deves ter uma DB para armazenar os comentários e etc, portanto para o php vamos ter que passar o user id da sessão iniciada, o conteúdo do comentário. html <input type="text" name="comentario" id="comentario"> <button onclick="EnviaComentario(userID, comentario)">Responder</button> javascript function EnviaComentario(UID, ComentID){ if(comentID.length == 0){ //valida se o campo esta vazio }else{ //senão constróis a ligação aqui e envias o dados para o php } } No ficheiro de php é algo idêntico a um login e onde fazes as querys à DB. Deve de ter alguns erros no código mas não estou com muito tempo agora por causa do trabalho, sorry X). cumps, fteixeira1993
Rui Silva Posted August 13, 2015 at 09:57 AM Author Report #586989 Posted August 13, 2015 at 09:57 AM Viva, Supostamente deves ter uma DB para armazenar os comentários e etc, portanto para o php vamos ter que passar o user id da sessão iniciada, o conteúdo do comentário. html <input type="text" name="comentario" id="comentario"> <button onclick="EnviaComentario(userID, comentario)">Responder</button> javascript function EnviaComentario(UID, ComentID){ if(comentID.length == 0){ //valida se o campo esta vazio }else{ //senão constróis a ligação aqui e envias o dados para o php } } No ficheiro de php é algo idêntico a um login e onde fazes as querys à DB. Deve de ter alguns erros no código mas não estou com muito tempo agora por causa do trabalho, sorry X). cumps, fteixeira1993 obrigado por responder, mas essa parte ja tenho feita falta me a ligação, eu ja tentei fazer mas nao da, o que preciso mesmo e de fazer a ligação , nao sei como mando os valares por post no ajax
fteixeira1993 Posted August 13, 2015 at 01:35 PM Report #586995 Posted August 13, 2015 at 01:35 PM Espero que o link ajude, aqui tens um exemplo cumps, fteixeira1993
Rui Silva Posted August 13, 2015 at 02:30 PM Author Report #586996 Posted August 13, 2015 at 02:30 PM ok obrigado mas este fname é o nome que douno input no formulario? descculpa la a minha ignorância mas eu ja vi isto e nao entendi muito bem. como atribuo o valor ao que envio??? e o "&" é para separar as variaveis?
fteixeira1993 Posted August 13, 2015 at 05:51 PM Report #587009 Posted August 13, 2015 at 05:51 PM ok obrigado mas este fname é o nome que douno input no formulario? descculpa la a minha ignorância mas eu ja vi isto e nao entendi muito bem. como atribuo o valor ao que envio??? e o "&" é para separar as variaveis? Sem stress estamos cá para aprender xD uns com os outros e explicar as coisas uns aos outros ^^ && -> operador lógico 'e' (exemplo: se a+b=1 e 3-2=1 então é verdade) fname -> nome da variável que utilizas para passar para o php (exemplo: <input ... name="nome"/> -> ao clicar no enviar -> php -> $user=$_POST['nome']) É qualquer coisa como isso, alguém que me corrija se estiver errado 🙂 cumps, fteixeira1993
Rui Silva Posted August 13, 2015 at 10:45 PM Author Report #587021 Posted August 13, 2015 at 10:45 PM (edited) desde ja muito obrigado por estas a ajudar, no meu continua a nao dar, vou por aqui o codigo, se poderes ve onde esta o erro. Formulario: <form> <textarea class="form-control spacer-bottom-sm" name="comentario" ></textarea> <input type="hidden" name="id_user" value="<?php echo $id_user ?>" /> <button class="btn btn-primary" type="button" onclick="Comentar(comentario, id_user)">Comentar</button> </form> --------------------------------------------------------------------- o script ajax: <script> function Comentar(comentario, id_user) if (texto == "") { document.postElementById("comentarios").innerHTML = ""; return; } else { if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } else { // code for IE6, IE5 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function() { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { document.getElementById("comentarios").innerHTML = xmlhttp.responseText; } } xmlhttp.open("POST","../funcoes/postcomentario.php",true); xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); xmlhttp.send(texto); } </script> estes estao na mesma pagina, -------------------------------------------------------------------- e agora a outra pagina para a base de dados: <?php require "../bd/bd.php"; require "funcoes.php"; ?> <?php if($_POST){ $texto=$_POST['texto']; $id_user=$_POST['id_user']; $comentario_de=$_SESSION['id']; $data_comentario = date("d/m/Y h:i:s"); $sql_comentario=mysqli_query($con, "insert into comentarios(id_user, comentario_de, comentario, data) VALUES ('$id_user', '$comentario_de', '$texto', '$data_comentario') ") or die (mysql_error()); } ?> Podes dar uma vista de olhos e ver o que ta mal? Edited August 13, 2015 at 10:46 PM by Rui Silva
fteixeira1993 Posted August 14, 2015 at 12:58 PM Report #587035 Posted August 14, 2015 at 12:58 PM Viva, Numa análise muito rápida verifico que falta o atributo id nos campos do formulario, sem o id o script não vai fazer nada... E no php quando verificas se existe post, tem que ser algo do género: if(!isset($_POST['variavel'])){ //o que acontece quando existe post }else{ //faz o que tem a fazer } Nota: Quando colocas pedaços de código no forum usa entre a tag CODE, no editor de texto dos posts tens o botão <> para fazer isso por ti e despejas o código dentro da caixa que te abre. cumps, fteixeira1993 1 Report
Rui Silva Posted August 18, 2015 at 03:58 PM Author Report #587135 Posted August 18, 2015 at 03:58 PM (edited) nao sabia que era preciso os id, pensei que fosse os atributos name <div id="comments" class="tab-pane active cont"> <form> <textarea class="form-control spacer-bottom-sm" id="comentario" ></textarea> <input type="hidden" id="id_user" value="<?php echo $id_user ?>" /> <button class="btn btn-primary" type="button" onclick="Comentar(comentario, id_user)">Comentar</button> </form> </div> meti os id's mas nao consegui nada carrego no botao para enviar e nada Edited August 18, 2015 at 03:58 PM by Rui Silva
ItsCrazy Posted August 26, 2015 at 02:18 PM Report #587334 Posted August 26, 2015 at 02:18 PM (edited) Boas é pá quando mexes numa ferramenta nova tenta sempre começar pelo simples ajax ainda tem muitas coisas que podem dar para o torto por coias simplissimas que com a experiência vais melhorando e vais ver que é bue simples de usar: Com Jquery a ajudar a simplificar podes fazer esta chamada ajax: $.ajax({ url: "inc/autentication.php", // pagina que vai processar o pedido ajax em php type: "POST", //POST || GET dataType: "json", //json || html || xml || outras coisas ve a api jquery(ajax) data : ({revert : ficheiro}), // {variavel javascript : variavel php} no ficheiro php usas assim $_POST['ficheiro'] error: function(){ //se quiseres indicar erros alert("Ups, Something just exploded call the A-team"); }, success: function(data){ //em caso de successo fazer qualquer coisa $('#minhaDiv').append('Pedido Ajax feito com sucesso!'); } }); Tens outras funções dentro do ajax como beforeSend: function... etc Coisas a evitar: No dataType tens que ver que tipo de dados estás a returnar do php porq caso tenhas especificado json e estiveres a devolver outra coisa creio que não dá erro acho que não devolve msm nada ficas a toa.. em php para devolveres json basta fazeres isto: echo json_encode($minhaVariavel); apartir deste echo json_encode convem fazeres um die() porq senão ele continua a percorrer o ficheiro e se realmente já conseguiste o que querias porq continuar a percorrer o ficheiro.. Se meteres um var_dump na pagina php que é percorrida no pedido ajax tem em conta que o pedido não processa o success mas podes ver o var_dump na console F12 e vais a network e abres a pagina php Mais não me lembro por isso Good Luck Edited August 26, 2015 at 02:20 PM by ItsCrazy
pexoia Posted September 14, 2015 at 03:43 PM Report #587921 Posted September 14, 2015 at 03:43 PM (edited) Boas tardes, Não sei se ainda precisas de ajuda, mas eu também já tive a mesma duvida que tu mas depois pensei... Existe já algumas pessoas que fazem isto por nós e são projetos excelentes e for free, porque haveremos de estar a re inventar a roda ? 😄 Dá uma olha no que eu fiz no meu site. Eu tenho uma página de noticias, onde o admin vai ao painel de admin, entra na secção para escrever a noticia, publica ela e pronto aparece no site para os leitores lerem. Mas depois pensei... Bem, em vez de as pessoas apenas entrarem, lerem a noticia e irem embora, porque não faço aqui uma secção de comentarios já agora para as pessoas darem o seu comentário sobre a mesma ? E pronto, lembrei me disto 😛 É um sistema bastante completo e muito interativo 🙂 Inclusive tu podes escolheres moderadores para esta secção de noticias e tudo, podes inserir imagens em drag&drop etc etc. Cumprimentos Edited September 14, 2015 at 03:46 PM by pexoia
RuiAlmeida20 Posted September 14, 2015 at 08:26 PM Report #587924 Posted September 14, 2015 at 08:26 PM Ja agora, a disqus permite usar a conta sem ser nos comentarios ?
pexoia Posted September 14, 2015 at 11:53 PM Report #587937 Posted September 14, 2015 at 11:53 PM (edited) Ja agora, a disqus permite usar a conta sem ser nos comentarios ? A conta que crias na Disqus não serve só para fazer comentários, se é isso que estás a perguntar 😛 Existem muitas coisas que podes tirar partido a partir do momento que tens conta lá. Cumprimentos Edited September 14, 2015 at 11:53 PM by pexoia
RuiAlmeida20 Posted September 15, 2015 at 11:03 AM Report #587944 Posted September 15, 2015 at 11:03 AM Mas pelo que percebi ele já tem sistema de user no site... O disqus nao vai dar muito jeito pq vai obrigar o user a criar outra conta e fica dependente de terceiros... --- Tens aqui um tutorial (http://tutorialzine.com/2010/06/simple-ajax-commenting-system/) que me parece adequado as tuas necessidades.
pexoia Posted September 15, 2015 at 01:04 PM Report #587955 Posted September 15, 2015 at 01:04 PM Não estou a perceber muito bem o que estás a querer dizer xD Tipo a pessoa que queira ir lá comentar pode ou não ter conta na disqus, isso depende se ele quiser que o user tenha conta lá ou não. Quanto ao ficar dependente de terceiros queres dizer o que ? xD A Disqus é uma empresa conceituada, milhares e milhares de empresas usam a Disqus, isto se estás a querer dizer que um dia ela pode acabar e ele ficar sem os comentários é ? u_u Isso é quase impossivel de acontecer mas pronto 😛 Só estava a dizer que ele podia ficar com uma coisa bem jeitosa, sem ter muito trabalho dado que ele está com algumas dificuldades no processo 😛
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now