Autor Zpráva
slnko
Profil *
Mam takyto ptoblem mam script na pridavanie emailovych adries z DB a v pripade ze tam uz mail existuje tak ho zmaze script je takyto:

<?php

$DnesniDatum=date("Y-m-d H:i:s");
$Kod=MD5($_POST['mail']);
$email=$_POST['mail'];
////////////////////////////////////////////////////////////////////// /////////////////
mysql_connect("xxx", "xxx", "xxx") or
die("Could not connect: " . mysql_error());
mysql_select_db("xxx");
////////////////////////////////////////////////////////////////////// /////////////////////
@$vysledek=MySQL_Query("INSERT INTO seznam VALUES ('', '$DnesniDatum', '$email', '$Kod', 'OK')");
if($vysledek):
$predmet="Potvrdenie e-mailu";
$hlavicka="From: xxx@xxx.sk X-Mailer: TEST Content-Type: text/html";
$zprava="Dna: ".$DnesniDatum." bol pridany Vas e-mail do nasej databazy pre zasielanie novinek naseho servera. S pozdravom Team waiki.eu";
mail("$email","$predmet","$zprava","$hlavicka");
// zasl&aacute;n&iacute; emailu uživateli pro ov&igrave;&oslash;en&iacute;
echo "V&aacute;&scaron; e-mail bol pridan&yacute; do na&scaron;ej datab&aacute;zy.";
else:
if(mysql_errno()==1062):
// kontrola duplicity vkl&aacute;dan&yacute;ch &uacute;daj&ugrave;
$sqlko = mysql_query("DELETE FROM seznam WHERE email =$email");
if($sqlko){
echo "Záznam bol úspešne vymazany z databázy!";
} else {
echo "Záznam sa nepodarilo vymazat z databázy!";
}
else:
// do&scaron;lo k jin&eacute; chyb&igrave;
echo "Do&scaron;lo k chybe, kontaktujte administr&aacute;tora xxx.sk";
exit;
endif;
endif;
///////////////////////////////////////////////////////////////////////////////////////////

?>
slnko
Profil *
A zabudol som napisat s cim je problem. ked napisem za mail daky jeden znak, bud cislo alebo pismeno tak to vsetko funguje ako nahle zadam nieky dlhsi nazov alebo mail, tak pridat mi ho prida ale nezmaze kde moze byt problem?
WertriK
Profil
Hodila by se taky struktura tabulky.

Máš nastavený sloupec mail, že nesmí obsahovat duplicitní hodnoty ?
nightfish
Profil
DELETE FROM seznam WHERE email = '$email'
slnko
Profil *
DELETE FROM seznam WHERE email = '$email' no tabulka je seznam a tabulka je email. ono mi to funguje ked tam zadam napr. a alebo 4 alebo nieco take co ma len jeden znak ale ked tam dam nieco dlhsie tak to nejde.
WertriK
Profil
Když bych já tobě napsal že mi nejede pincek, věděl by jsi mi podle toho poradit co s ním je ?
Tipuju že ne i kdyby jsi se v pinckovy vyznal.

no tabulka je seznam a tabulka je email
tak to nejde

Psal jem o struktuře tabulky a ptal jsem se na duplicitu.
Pokud potřebuješ pomoc od někoho kdo o tvém problému neví nic, napiš raději víc než-li míň.
Co to udělá ? Vypíše chybu, vypíše "Záznam sa nepodarilo vymazat z databázy!" ?
slnko
Profil *
sorry asi som to zle napisal tak tabulka je seznam a stlpec v ktorom hladam duplicitny zaznam je email. podla toho porovnavam zadany mail, a v pripade ze tam taky mail nieje tak ho pride da databazy a v pripade ze tam taky mail je tak ho zese zmaze. a ja ked dam do premennej email daky jeden znak tak ho prida, ked znova zadam ten isty znak tak ho zmaze. a ked do tej premennnej zadam viac znakou (napr. mailovu adresu alebo hosiaky text ktory ma viac ako 1 znak) tak pridat mi ho prida bez problemou do DB ale ked ho znova zadam tak porovna ze zaznam tam uz je a vypise "Záznam sa nepodarilo vymazat z databázy!".

Myslim ze uz je to dobre popisany cely problem.
slnko
Profil *
Problem vyrieseny keby nieco tak: "DELETE FROM seznam WHERE email ='".$email."'"
Toto téma je uzamčeno. Odpověď nelze zaslat.

0