Gå til innhold

Slette innhold fra mysql tabell


Anbefalte innlegg

Skrevet

Har et script som besøkende kan legge til komentarer/meldinger

databasen ser slik ut

 

 `id` int(11) NOT NULL auto_increment,
 `avsender` varchar(50) default NULL,
 `tekst` text,
 `dato` datetime default NULL,
 PRIMARY KEY  (`id`),
 FULLTEXT KEY `avsender` (`avsender`,`tekst`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3;

 

Dataark for tabellen innhold ser slik ut

 

INSERT INTO `innhold` VALUES (1, 'Rudi', 'test', '2006-02-10 10:30:00');

INSERT INTO `innhold` VALUES (2, 'test', 'test', '2006-02-13 11:18:00

 

koden jeg bruker for og slette innholdet ser slik ut

 

<?
//Vi lager en klasse
class db
{
//Noen variabler
var $hostname = "localhost";
var $username = "root";
var $password = "";
var $userstable = "person";
var $dbName = "mindatabase";
var $result;

function koble_til()
{
//Kobler til databasen vår
mysql_connect($this->hostname,$this->username,$this->password)
   || die(mysql_error());
@mysql_select_db($this->dbName)
   || die("Unable to select database");
}

function slett(&$navn)
{
//I denne funksjonen sletter vi valgte post
$query = "DELETE FROM $this->userstable WHERE navn = '$navn'";
$this->result = mysql_query($query);
echo "Slettet navnet $navn";
}

function steng_db()
{
//Lukker koblingen til databasen
mysql_close();
}
} //Slutt på klassen vår

//Vi lager et nytt objekt
$obj =& new db;
//Så kaller vi opp funksjonene våre
$obj->koble_til();
$obj->slett($_GET['navn']);
$obj->steng_db();
?> 

 

hvordan skal jeg redigere denne koden slik at den kan slette innholdet i databasen

Videoannonse
Annonse
Skrevet

Det jeg ser umiddelbart er at spørringen din er feil:

 

$query = "DELETE FROM $this->userstable WHERE navn = '$navn'";

Skal være:

$query = "DELETE FROM". $this->userstable ." WHERE navn = ".$navn;

 

Har ikke testen den, men jeg tror dette skal gjøre susen.

Skrevet (endret)

Skal si deg en ting jeg. Den spørringen var helt korrekt. Din derimot inneholder en feil siden strenger skal ha ' rundt seg.

 

Nightflyer: hva er det du mener med "hvordan skal jeg redigere denne koden slik at den kan slette innholdet i databasen"? Vil du slette en bestemt rad? Innholdet i en tabell?

Endret av Ernie
Skrevet (endret)

det er dette jeg vil ha slettet men jeg fikk ikke til og slette noe me det scripte jeg postet først

 

INSERT INTO `innhold` VALUES (1, 'Rudi', 'test', '2006-02-10 10:30:00');

INSERT INTO `innhold` VALUES (2, 'test', 'test', '2006-02-13 11:18:00

Endret av Nightflyer
Skrevet (endret)

DELETE FROM $this->userstable WHERE avsender = '$navn'

 

Edit: Det over er en bug i sql-tagen. "<span style='color:orange'>" skal ikke være med.

Endret av Ernie

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...