Gå til innhold

Legge til data i tabell


Anbefalte innlegg

Skrevet

Jeg får ikke lagt til data i en tabell. Noen som vet hva som feiler koden min?

<?php

include('connect.php');

$title    = $_GET['title'];
$excerpt  	= $_GET['excerpt'];
$full_news  	= $_GET['full_news'];
$date    = date("Y-m-d G:i:s");

$query = "INSERT INTO articles (title,excerpt,full_news,date) VALUES('$title','$excerpt','$full_news','$date')";

$sql = mysql_query($query);
echo mysql_error();
if (!$sql) {
echo "Data has not been added";
echo "Could not run query: ".mysql_error();
}
else {
echo "Article added in table articles";
}
?>

 

Tabellen:

CREATE TABLE `articles` (
 `id` int(3) unsigned NOT NULL auto_increment,
 `title` text collate utf8_unicode_ci NOT NULL,
 `excerpt` mediumtext collate utf8_unicode_ci NOT NULL,
 `full_news` longtext collate utf8_unicode_ci NOT NULL,
 `category` varchar(32) collate utf8_unicode_ci NOT NULL default '',
 `date` datetime NOT NULL default '0000-00-00 00:00:00',
 `date_updated` datetime NOT NULL default '0000-00-00 00:00:00',
 `author` text collate utf8_unicode_ci NOT NULL,
 `author_email` text collate utf8_unicode_ci NOT NULL,
 PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;

 

category, date_updated, author og author_email skal jeg ikke bruke enda. Så derfor legger jeg ikke til noe der..

Videoannonse
Annonse
Skrevet

Får du noen feil mld elns? Og henter du det du skal legge inn via $_GET? Er ikke sikker på om det er feilen din, men har du ikke tenkt $_POST dær isteden siden du har text osv.. Men det må ikke nødvendigvis være feilen da..:)

Skrevet

Prøv dette da:

 

<?php

include('connect.php');

$title = $_GET['title'];
$excerpt = $_GET['excerpt'];
$full_news = $_GET['full_news'];

$query = "INSERT INTO `articles` (`title`, `excerpt`, `full_news`, NOW()) VALUES ('$title', '$excerpt', '$full_news', '$date')";

$sql = mysql_query($query);

if (!mysql_query($query)) {
 echo "Data has not been added";
 echo "Could not run query: ".mysql_error();
}
else {
 echo "Article added in table articles";
}

?>

Skrevet (endret)

Beethoven: Den der er jo litt ugunstig, da... I og med at du kjører spørringen 2 ganger (Først ved $sql = ... og etterpå i if setningen). Er nok bare en liten "slurvefeil" fra din side, regner jeg med. Du mente sikkert if(!$sql)...

 

En annen ting er at når du skriver "Could not run query:", så forventer man nesten at spørringen (slik den ser ut) kommer rett etter kolon, det gjør den ikke vha å bare skrive ut mysql_error().

 

Sett heller en or die etter mysql_query:

$sql = mysql_query($query) or die("Error in query: ".$query."<br>".mysql_error());

Som vil stoppe dersom det skjer en feil i spørringen, og skrive ut spørringen slik den ser ut, etterfulgt av feilmelding fra mysql

Endret av kakkle

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