peste Posted February 18, 2013 at 02:14 PM Report #495945 Posted February 18, 2013 at 02:14 PM (edited) Boa tarde. Tenho uma pagina de php, que serve para mostrar todos os contactos existentes na conta criada. E eu queria nao so apresentar os contactos, como poder editar e apagar os contactos. O que eu queria era que ao clicar em apagar aparece tipo uma mensagem de confirmação a perguntar se queria ou nao apagar o contacto. e ao fazer editar aparece em baixo uma linha para poder editar o contacto, ou uma janela pequena onde apareça o valor para poder alterar. o codigo é este: <h2 style="color:#000">A Sua Lista de Contactos: </h2> <hr> <br> <table border="2"> <?php //$sql="select * from newsletters where id_user='".$_SESSION["userid"]."' and status='1'"; $sql="select * from users_e_mails where id_user='$id_user'"; $result=mysql_query($sql); if ($result) { while ( $linha=mysql_fetch_array($result)) { $id_user_mail=$linha["id_user_e_mail"]; $e_mail=$linha["e_mail"]; echo "<tr>"; echo "<td bgcolor='#8a9094'>"; echo "Contacto"; echo "</td>"; echo "<td>"; echo "$e_mail $id_user_mail"; echo "</td>"; ?> <td align="center"> <input type="button" onclick="location.href='editar-lista?id=<?php echo $id_user_mail?>'" value="Editar" style="width:auto; height:35px; padding: 5px 10px;"/> </td> <td align="center"> <input type="button" onclick="#" value="Apagar" style="width:auto; height:35px; padding: 5px 10px;"/> </td> <td> <input type="hidden" id="edit_id" name="edit_id" value="<?php echo $id_user_mail;?>"> </td> </tr> <?php } } ?> <tr> <td colspan="2" align="center"> <input type="button" onclick="location.href='dados-da-conta'" value="Dados da Conta" style="width:auto; height:35px; padding: 5px 10px;"/> </td> <td colspan="2" align="center"> <input type="button" onclick="location.href='adicionar-contactos'" value="Adicionar Contactos" style="width:auto; height:35px; padding: 5px 10px;"/> </td> </tr> </table> Cumprimentos a todos. Obrigado, Pedro Santos Edited February 18, 2013 at 04:16 PM by brunoais geshi
NunoDinis Posted February 18, 2013 at 02:56 PM Report #495957 Posted February 18, 2013 at 02:56 PM Com essa indentação até custa olhar.. De qualquer das maneiras, podes apagar assim: <SCRIPT LANGUAGE="Javascript"> function confirmBox() { if (confirm("Quer mesmo eliminar?")) { location.href="apaga.php"+id;} } </SCRIPT> Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
brunoais Posted February 18, 2013 at 04:20 PM Report #495991 Posted February 18, 2013 at 04:20 PM Com essa indentação até custa olhar.. De qualquer das maneiras, podes apagar assim: <SCRIPT LANGUAGE="Javascript"> function confirmBox() { if (confirm("Quer mesmo eliminar?")) { location.href="apaga.php"+id;} } </SCRIPT> Será que queres dizer: <script type="text/javascript" LANGUAGE="Javascript"> function confirmBox() { if (confirm("Quer mesmo eliminar?")) { location.href="apaga.php?id="+id; } } </script > "[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31 Life is a genetically transmitted disease, induced by sex, with death rate of 100%.
NunoDinis Posted February 18, 2013 at 04:22 PM Report #495994 Posted February 18, 2013 at 04:22 PM Sim sim, esqueci-me do parâmetro. Obrigado pela correção! Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
peste Posted February 18, 2013 at 04:38 PM Author Report #495997 Posted February 18, 2013 at 04:38 PM (edited) Peço desculpa peça identação Decidi fazer o botao de apagar desta maneira <td align="center"> <a href="apagar-contacto?id=<?php echo $id_user_mail?>" onclick="return confirm('Deseja eliminar <?php echo $e_mail?> da sua lista?')">Eliminar</a> </td> so que na pagina apagar-contacto ele nao consegue ler o id faço um $_GET['id']; mas ele nao vai buscar o valor. Edited February 18, 2013 at 05:14 PM by peste
Virneto Posted February 18, 2013 at 04:48 PM Report #496000 Posted February 18, 2013 at 04:48 PM maybe... echo $id_user_mail; ?>" "Que inquieto desejo vos tortura, Seres elementares, força obscura? Em volta de que ideia gravitais?" >> Anthero de Quental - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Linuxando.com | ...
peste Posted February 18, 2013 at 04:52 PM Author Report #496003 Posted February 18, 2013 at 04:52 PM ja fiz void, e ele imprime o valor, e quando carrego na hiperligação, no browser aparece apagar-contacto?id=23, nao percebi porque é que nao vai buscar o valor...
NunoDinis Posted February 18, 2013 at 04:52 PM Report #496004 Posted February 18, 2013 at 04:52 PM Mas ele passa o valor do $id_user_mail no href? Se passar, e se o problema for busca-lo na pagina apagar-contacto posta o código.. Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
peste Posted February 18, 2013 at 04:58 PM Author Report #496006 Posted February 18, 2013 at 04:58 PM (edited) O codigo é o seguinte: <?php session_start(); require_once("admin/includes/config.php"); require_once("admin/includes/functions.php"); if (!empty($_GET["id"])){ $id=$_GET["id"]; echo "ola $_POST[id]"; $del_sql("DELETE FROM users_e_mails where id_user_e_mail='$id'"); mysql_query($del_sql); if ((mysql_affected_rows()==1)){ echo "<script language=\"javascript\" type=\"text/javascript\"> alert(\"Contacto eliminado\"); </script>"; echo "<meta http-equiv=\"refresh\" content=\"0;url=contactos\"/>"; } else{ echo "<script language=\"javascript\" type=\"text/javascript\"> alert(\"Contacto não eliminado\"); </script>"; echo "<meta http-equiv=\"refresh\" content=\"0;url=contactos\"/>"; } } else{ echo "<script language=\"javascript\" type=\"text/javascript\"> alert(\"oii\"); </script>"; echo 'ola '.$_GET["id"].'j'; //echo "<meta http-equiv=\"refresh\" content=\"0;url=contactos\"/>"; } ?> ate pus o echo no final para ver se ele imprime alguma coisa e nada. Edited February 18, 2013 at 05:12 PM by peste
NunoDinis Posted February 18, 2013 at 05:02 PM Report #496007 Posted February 18, 2013 at 05:02 PM Porque ele só vai imprimir se não for diferente de vazio. if (!empty($_GET["id"])){ //o que faz se for diferente de vazio } else { //o que faz se for vazio } Põe antes do primeiro if e diz se retorna valor.. Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
Virneto Posted February 18, 2013 at 05:03 PM Report #496008 Posted February 18, 2013 at 05:03 PM vê bem... $id=$_GET["id"]; echo "ola $_POST[id]"; estás a usar $_GET e $_POST em simultâneo? "Que inquieto desejo vos tortura, Seres elementares, força obscura? Em volta de que ideia gravitais?" >> Anthero de Quental - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Linuxando.com | ...
peste Posted February 18, 2013 at 05:05 PM Author Report #496009 Posted February 18, 2013 at 05:05 PM já pus antes do primeiro if, e não retorna valor
NunoDinis Posted February 18, 2013 at 05:07 PM Report #496010 Posted February 18, 2013 at 05:07 PM (edited) vê bem... $id=$_GET["id"]; echo "ola $_POST[id]"; estás a usar $_GET e $_POST em simultâneo? Não é por aí.. podia fazer simplesmente: echo 'ola'.$id; O erro, visto com atenção, estará aqui. <a href="apagar-contacto.php?id=<?php echo $id_user_mail?>" Não estás a passar a extensao do ficheiro .php. Edited February 18, 2013 at 05:08 PM by NunoDinis Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
peste Posted February 18, 2013 at 05:09 PM Author Report #496015 Posted February 18, 2013 at 05:09 PM (edited) sim eu ja tinha reparado nisso, podia ate do if igualar $id=$_GET['id']; e depois era só usar o $id em vez do $_GET Edited February 18, 2013 at 05:15 PM by peste
NunoDinis Posted February 18, 2013 at 05:13 PM Report #496017 Posted February 18, 2013 at 05:13 PM Visto o que disse acima ? Não indicaste a extensão do ficheiro.. Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
peste Posted February 18, 2013 at 05:17 PM Author Report #496018 Posted February 18, 2013 at 05:17 PM como eide explicar, nao indiquei a extensão do ficheiro porque tenho um ficheiro content que se a pagina for por exemplo, teste, vai incluir o teste.php
NunoDinis Posted February 18, 2013 at 05:19 PM Report #496020 Posted February 18, 2013 at 05:19 PM Mas a página não é só um auxiliar para fazeres o delete ? Se sim, para que andas com contents ? Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
peste Posted February 18, 2013 at 05:23 PM Author Report #496022 Posted February 18, 2013 at 05:23 PM na empresa que estou a estagiar é assim que eles fazem. vou tentar ver outra maneira. obrigadão na mesma, abraço a todos
NunoDinis Posted February 18, 2013 at 06:34 PM Report #496032 Posted February 18, 2013 at 06:34 PM E já experimentaste sem o content para ver se dá ? Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
peste Posted February 18, 2013 at 06:35 PM Author Report #496033 Posted February 18, 2013 at 06:35 PM (edited) tive que fazer umas alteraçoes, nos dois codigos, e um colega meu deu-me esta dica usar isto echo "<pre>"; print_r($_GET); echo "</pre>"; onde ele vai buscar o valores do get, e tive que usar uma variavel var2, que esta no ficheiro .htacces, e depois no envio tirei o "=id" e pus / vou por o codigo ficheiro que envia <?php session_start(); require_once("admin/includes/config.php"); require_once("admin/includes/functions.php"); $id_user = $_SESSION['user_id']; $username = $_SESSION['user_name']; $user_email=$_SESSION['user_mail']; ?> <h2 style="color:#000">A Sua Lista de Contactos: </h2> <hr> <br> <table border="2"> <?php //$sql="select * from newsletters where id_user='".$_SESSION["userid"]."' and status='1'"; $sql="select * from users_e_mails where id_user='$id_user'"; $result=mysql_query($sql); if ($result) { while ( $linha=mysql_fetch_array($result)) { $id_user_mail=$linha["id_user_e_mail"]; $e_mail=$linha["e_mail"]; echo "<tr>"; echo "<td bgcolor='#8a9094'>"; echo "Contacto"; echo "</td>"; echo "<td>"; echo "$e_mail"; echo "</td>"; ?> <!--Botao editar--> <td align="center"> <a href='editar-lista/<?php echo $id_user_mail; ?>' onclick="return confirm('Deseja Editar o contacto <?php echo $e_mail;?>?')">Editar</a> </td> <!--Botao eliminar--> <td align="center"> <a href='apagar-contacto/<?php echo $id_user_mail; ?>' onclick="return confirm('Deseja eliminar <?php echo $e_mail;?> da sua lista?')">Eliminar</a> </td> </tr> <?php } } ?> <tr> <td colspan="2" align="center"> <input type="button" onclick="location.href='dados-da-conta'" value="Dados da Conta" style="width:auto; height:35px; padding: 5px 10px;"/> </td> <td colspan="2" align="center"> <input type="button" onclick="location.href='adicionar-contactos'" value="Adicionar Contactos" style="width:auto; height:35px; padding: 5px 10px;"/> </td> </tr> </table> ficheiro que recebe <?php session_start(); require_once("admin/includes/config.php"); require_once("admin/includes/functions.php"); $id=$_GET["var2"]; if ($id!=0){ $del_sql=("DELETE FROM users_e_mails where id_user_e_mail='$id'"); mysql_query($del_sql); if ((mysql_affected_rows()==1)){ echo "<script language=\"javascript\" type=\"text/javascript\"> alert(\"Contacto eliminado\"); </script>"; echo "<meta http-equiv=\"refresh\" content=\"0;url=contactos\"/>"; } else{ echo "<script language=\"javascript\" type=\"text/javascript\"> alert(\"Contacto não eliminado\"); </script>"; echo "<meta http-equiv=\"refresh\" content=\"0;url=contactos\"/>"; } } else{ echo "<script language=\"javascript\" type=\"text/javascript\"> alert(\"Ocorreu um erro inesperado\"); </script>"; echo "<meta http-equiv=\"refresh\" content=\"0;url=contactos\"/>"; } ?> Edited February 18, 2013 at 06:49 PM by peste
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