Nightflyer Skrevet 13. februar 2006 Skrevet 13. februar 2006 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
jtsorensen Skrevet 13. februar 2006 Skrevet 13. februar 2006 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.
Ernie Skrevet 13. februar 2006 Skrevet 13. februar 2006 (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 13. februar 2006 av Ernie
Nightflyer Skrevet 13. februar 2006 Forfatter Skrevet 13. februar 2006 (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 13. februar 2006 av Nightflyer
Ernie Skrevet 13. februar 2006 Skrevet 13. februar 2006 (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 13. februar 2006 av Ernie
Nightflyer Skrevet 13. februar 2006 Forfatter Skrevet 13. februar 2006 skal jeg endre $navn til navne på avsenderen?
Ernie Skrevet 13. februar 2006 Skrevet 13. februar 2006 skal jeg endre $navn til navne på avsenderen? 5597990[/snapback] Ja
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå