Jump to content
peste

[Resolvido] Apagar e Editar

Recommended Posts

peste

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 by brunoais
geshi

Ta demais o bar da praia maninho, sempre a PROGRAMAR em hard techo hehehehe

Share this post


Link to post
Share on other sites
NunoDinis

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

Share this post


Link to post
Share on other sites
brunoais

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%.

Share this post


Link to post
Share on other sites
peste

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 by peste

Ta demais o bar da praia maninho, sempre a PROGRAMAR em hard techo hehehehe

Share this post


Link to post
Share on other sites
Virneto

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 | ...

Share this post


Link to post
Share on other sites
peste

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...


Ta demais o bar da praia maninho, sempre a PROGRAMAR em hard techo hehehehe

Share this post


Link to post
Share on other sites
NunoDinis

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

Share this post


Link to post
Share on other sites
peste

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 by peste

Ta demais o bar da praia maninho, sempre a PROGRAMAR em hard techo hehehehe

Share this post


Link to post
Share on other sites
NunoDinis

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

Share this post


Link to post
Share on other sites
Virneto

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 | ...

Share this post


Link to post
Share on other sites
peste

já pus antes do primeiro if, e não retorna valor


Ta demais o bar da praia maninho, sempre a PROGRAMAR em hard techo hehehehe

Share this post


Link to post
Share on other sites
NunoDinis

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 by NunoDinis

Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro.

ndsotware.org

Share this post


Link to post
Share on other sites
peste

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 by peste

Ta demais o bar da praia maninho, sempre a PROGRAMAR em hard techo hehehehe

Share this post


Link to post
Share on other sites
NunoDinis

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

Share this post


Link to post
Share on other sites
peste

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


Ta demais o bar da praia maninho, sempre a PROGRAMAR em hard techo hehehehe

Share this post


Link to post
Share on other sites
NunoDinis

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

Share this post


Link to post
Share on other sites
peste

na empresa que estou a estagiar é assim que eles fazem.

vou tentar ver outra maneira.

obrigadão na mesma, abraço a todos


Ta demais o bar da praia maninho, sempre a PROGRAMAR em hard techo hehehehe

Share this post


Link to post
Share on other sites
peste

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 by peste

Ta demais o bar da praia maninho, sempre a PROGRAMAR em hard techo hehehehe

Share this post


Link to post
Share on other sites
peste

sim, deu-me certinho, eliminar logo, ja tou a fazer o editar da mesma maneira :D


Ta demais o bar da praia maninho, sempre a PROGRAMAR em hard techo hehehehe

Share this post


Link to post
Share on other sites
NunoDinis

Ótimo, podes marcar o tópico como resolvido então. Bom trabalho :)


Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro.

ndsotware.org

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.