Avatar billede repsac Nybegynder
25. januar 2001 - 17:40 Der er 14 kommentarer og
2 løsninger

Læs hvad der står i MySQL DB.

Findes der en funktion så man kan se alt hvad der er i en \"table\"?
Hvorfor får jeg en fejl i denne kode?
**********************
<?php
$con = mysql_connect(\"localhost\", \"root\", \"\");
mysql_select_db(\"sportstaske\");

$insertSQL = \"INSERT INTO elevdata (elevnr, fnavn, enavn, fdag, atlf)
              VALUES (1, \'Christine\', \'Aagaard\', \'190483\', 74472536)\";
mysql_query($insertSQL);

$resultat = mysql_query(\"select * from elevdata\");
while ($raekke = mysql_fetch_array($resultat)){
    echo \"fnavn: \".$raekke[\'fnavn\'].\"<br>navn:\".$raekke[\'enavn\'];
}
mysql_close($con);
?>
**********************
Jeg får fejl på \"while\"-linien (linie 10) ... ??? - hvorfor?

Casper

PS. Jeg er total newbie så svaret må meget gerne uddybes ...
Avatar billede tfylliv Nybegynder
25. januar 2001 - 17:44 #1
Hvad er fejlen?
Avatar billede repsac Nybegynder
25. januar 2001 - 17:52 #2
Warning: 0 is not a MySQL result index in c:\\apache\\ht...

Det\'r vel fordi der ikke står noget i DB\'en eller hvad?
Avatar billede repsac Nybegynder
25. januar 2001 - 17:54 #3
Findes der en måde hvorpå man kan se alt hvad der er i en \"table\"?
Avatar billede repsac Nybegynder
25. januar 2001 - 18:14 #4
Kom så I 103 online brugere ...
Jeg skal lige indtage føde og jeg er \"back to work\" :)
Avatar billede halnet Nybegynder
25. januar 2001 - 18:16 #5
Ja... det er det du gør... der er vist intet i den!!
Er du sikker på at der er noget i den (og at den hedder elevdata)??

$resultat = mysql_query(\"select * from elevdata\");
if (mysql_num_rows($resultat) > 0) {
  while ($raekke = mysql_fetch_array($resultat)){
    echo \"fnavn: \".$raekke[\'fnavn\'].\"<br>navn:\".$raekke[\'enavn\'];
  }
}

- Anders
Avatar billede repsac Nybegynder
25. januar 2001 - 18:44 #6
Nej jeg er ikke sikker ... men skulle følgende ikke have indsat data i tabellen?

$insertSQL = \"INSERT INTO elevdata (elevnr, fnavn, enavn, fdag, atlf)
              VALUES (1, \'Bengt\', \'Spurv\', \'000000\', 12345678)\";
mysql_query($insertSQL);

Kan jeg på en smart måde se hvad der er i en tabel?
Avatar billede repsac Nybegynder
25. januar 2001 - 18:53 #7
Ja det skulle den da gerne (hedde elevdata) når jeg har brugt følgende:

$tabelSQL = \"CREATE TABLE elevdata
            (
                elevnr  NUMBER(2),
                fnavn    VARCHAR(20) NOT NULL,
                mnavn    VARCHAR(50),
                enavn    VARCHAR(20) NOT NULL,
                fdag    VARCHAR(6) NOT NULL,
                atlf INT(8) NOT NULL,
                mtlf INT(8),
                PRIMARY KEY (elevnr)
            )\";
mysql_query($tabelSQL);

Er der noget galt i denne kode så tabellen ikke bliver oprettet alligevel?
Avatar billede tfylliv Nybegynder
25. januar 2001 - 18:55 #8
Du kan jo altid bruge en god gammeldavs prompt.

Start en prompt op, og naviger hen til c:\\mysql\\bin (hvis altså at mysql er installeret i c:\\mysql).
Skriv:

mysql -u root

Der starter nu en MySQL client op, hvor du lave SQL forespørgelser. Start med at vælge den rigtige database med

use sportstaske;

Og derefter kan du fyre hvad du har lyst afsted, f.eks:

select * from elevdata;
osv..
Avatar billede tfylliv Nybegynder
25. januar 2001 - 18:56 #9
Husk at afslutte alle forespørgelser med semikolon ;
Avatar billede repsac Nybegynder
25. januar 2001 - 19:04 #10
Ok ... den findes ikke!
Men hvordan opretter jeg den så?

mysql> create table elevdata (\"elevnr number(2)\");\\g ???
Avatar billede repsac Nybegynder
25. januar 2001 - 19:06 #11
Hvorfor bliver den ikke oprettet når jeg skiver følgende i min php-fil?

$tabelSQL = \"CREATE TABLE elevdata
                (
                    elevnr  NUMBER(2),
                    fnavn    VARCHAR(20) NOT NULL,
                    mnavn    VARCHAR(50),
                    enavn    VARCHAR(20) NOT NULL,
                    fdag    VARCHAR(6) NOT NULL,
                    atlf INT(8) NOT NULL,
                    mtlf INT(8),
                    PRIMARY KEY (elevnr)
                )\";
mysql_query($tabelSQL);

Hvad gør jeg galt?
Avatar billede repsac Nybegynder
25. januar 2001 - 19:15 #12
Arrrrgh ... HJÆÆÆÆLP!
Avatar billede tfylliv Nybegynder
25. januar 2001 - 19:18 #13
Rolig nu. :-)

Det er din elevnr, der ikke holder. Der er ikke noget der hedder \"NUMBER\" i MySQL. Du må bruge f.eks \"INT\" istedet.

Altså

elevnr INT,
fnavn .......
...
Avatar billede tfylliv Nybegynder
25. januar 2001 - 19:20 #14
Nu jeg lige tænker mig om, så skal der også en NOT NULL på elevnr, fordi du bruger den som primær nøgle.
Avatar billede repsac Nybegynder
25. januar 2001 - 19:24 #15
Okay ... jeg prøver lige!
Det var ikke for at være sur ... jeg var bare ved at flå totterne af min hovedbund af irritation.
Avatar billede repsac Nybegynder
25. januar 2001 - 19:26 #16
=>tfylliv: Orv! Du\'r en skat! Halnet får lidt point også; håber det\'r ok!

Casper
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester