David Trasbo skrev:
> sql_spoerg("insert into Artikler
> (Overskrift1,Overskrift2,Overskrift3,Overskrift4,Overskrift5,Forfatter,Beskrivelse,Tekst)
> values ('Dette er en prøveartikel','En
> prøveartikel','Prøveartikel','Prøve','Pr.','David Trasbo','Dette er kun en
> prøve...','Lorem Ipsum. tekst. tekst.')");
For det første overholder du ikke normalitetsstandarder, når du laver
flere felter med overskrifter i din SQL-database (det er en god ide at
overholde, hvis du ønsker at lave udvidede søgefunktioner og lignende
til din database senere, eller hvis en anden programmør, skal arbejde
med dine scripts på et andet tidspunkt).
Løsningen er at tilføje en database kun med titler i stedet.
Når du kører forspørgsler til en MySQL-database, kan du fejlfinde dem
med følgende syntaks (dette her sparer dig for meget kode, set i forhold
til hvor mange funktioner, du har lavet til at lave præcis det samme):
<?
mysql_query("en masse SQL") or die(mysql_error());
?>
Hvis MySQL returnerer en fejl, vil scriptet afsluttes og udskrive en
fejl i stedet. Det burde hjælpe dig med din fejlfinding af SQL-scripts
(uden at bruge så mange funktioner og så meget kode).
I tilfælde af PostgreSQL bruges:
<?
pq_query("en masse SQL") or die(pg_last_error());
?>
> Funktioner.php kan ses her:
http://webdesignwiki.frac.dk/funktioner.txt.
Selv om det generelt er flinke mennesker her i gruppen, så bør du nok
alligevel skifte din adgangskode (det ser ud som om, at du har glemt at
slette den i din offentliggjorte fil "funktioner.txt").
> luk_forbindelse();
Du behøver faktisk ikke holde styr på at lukke forbindelsen til
databasen i PHP - Det gør PHP selv ;) Husk at hver gang du laver en
funktion, så kræver det ressourcer. Lad PHP gøre meget af dit
slavearbejde, så kan du tage dig af alt det andet ;)
Prøv at indsætte forskellige echo() i din kode, som udskriver "test1",
"test2" osv., så du kan se, hvor langt at scriptet når. Det vil
yderligere hjælpe med fejlfinding.
--
Med venlig hilsen
Kasper Johansen