Avatar billede clausberg Nybegynder
25. juli 2005 - 22:50 Der er 20 kommentarer og
1 løsning

arne_v. Tjeck venligst dette spørgsmål

Hej Arne_v
Du hjalp mig forleden med et spørgsmål om hvordan man laver links i sql - da jeg er stødt ind i et problem, skriver jeg direkte til dig.

tjeck følgende link ud, så ved du hvad det handler om:
http://www.eksperten.dk/spm/634328

Jeg har nu oprettet to filer:
showall.php som peger på filen showone.php (det er vel rigtigt???). Når jeg søger i min database finder den alle posterne, og jeg kan nu klikke på dem. Næste skærm viser en fejl som lyder:

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'sportsvogn med brede fælge' at line 1

Problemet er at scriptet for det første ikke sætter alle dataen ind i de dertil indrettede "tabeller" (fx titel, kategori, hjul osv)
For det andet så viser den ikke det første ord i titlen - der skal nemlig stå Rød sportsvogn.....

Håber du kan hjælpe.
/Claus
Avatar billede arne_v Ekspert
25. juli 2005 - 22:55 #1
nu findes der langt større PHP guruer end mig så det kan sagtens være at andre kan
hjælpe også

sender du et tal eller en tekst med over i URL til showone.php ?
Avatar billede arne_v Ekspert
25. juli 2005 - 22:58 #2
hvis det er en tekst værdi så skal den i '' i SELECT statement

og muligvis skal der laves noget URL encoding

jeg vil varmt anbefale brug af tal til det formål
Avatar billede clausberg Nybegynder
25. juli 2005 - 23:01 #3
tal????

I din besvarelse til mig sidst skrev du i filen showall.php:
<a href="showone.php?F1=7">7</a>

Er det det tal du tænker på... hvis ikke så er jeg ikke helt med :-(
Avatar billede screem_brille Novice
25. juli 2005 - 23:03 #4
Fra reglerne: punkt 2.1.17 det er ikek tilladt at stille spørgsmål specifikt til én eller flere bestemte personer, med mindre spørgsmålet er på 0 point eller hvis der er tale om lovlig pointoverførsel.
Avatar billede arne_v Ekspert
25. juli 2005 - 23:03 #5
ja

<a href="showone.php?F1=7">7</a>

og

$f1 = $_GET["F1"];
$rs = mysql_query("SELECT * FROM T1 WHERE F1=$f1") or die(mysql_error());

det er det 7 tal jeg spørger om er stadigt er et tal
Avatar billede arne_v Ekspert
25. juli 2005 - 23:05 #6
screem_brille>

det er helt åbent - alle PHP folk er meget velkomne

jeg er bare inde i billedet fordi jeg qua et tidligere spørgsmål har lidt ansvar
for problemet
Avatar billede clausberg Nybegynder
25. juli 2005 - 23:10 #7
Screem_brille>
det er taget til efterretning :-)
Avatar billede clausberg Nybegynder
25. juli 2005 - 23:15 #8
sætningen:
<a href="showone.php?F1=7">7</a>
har jeg udskiftet med:
    print "<td><a href='showone?titel=" . $row["titel"] . "'>" . $row["titel"] . "</a></td>\n";
for det hedder min tabel jo???
Hvis jeg lader 7 tallet være, så får jeg en fejl.

Og sætningen:
$f1 = $_GET["F1"];
$rs = mysql_query("SELECT * FROM T1 WHERE F1=$f1") or die(mysql_error());
er blevet til:
$titel = $_GET["titel"];
$rs = mysql_query("SELECT * FROM biler WHERE titel=$titel") or die(mysql_error());

Er jeg helt gal på den???
Avatar billede arne_v Ekspert
25. juli 2005 - 23:16 #9
$rs = mysql_query("SELECT * FROM biler WHERE titel=$titel") or die(mysql_error());

skal så være

$rs = mysql_query("SELECT * FROM biler WHERE titel='$titel'") or die(mysql_error());
Avatar billede arne_v Ekspert
25. juli 2005 - 23:17 #10
jeg har sat '' omkring $titel

men det var stadigvæk nemmere med et id som identificerede rækken
Avatar billede clausberg Nybegynder
25. juli 2005 - 23:21 #11
aha...
hvad mener du med id???

Og skal jeg bruge 7 tallet til noget???
Avatar billede screem_brille Novice
25. juli 2005 - 23:22 #12
arne_v dvs at reglerne kan bøjes som det passer en ? synes ellers det er ret tydeligt at det ikke er tilladt at spørge på den her måde, men ok *G*
Avatar billede arne_v Ekspert
25. juli 2005 - 23:24 #13
hvis du har 2 felter id og titel med henholdsvis 77 og 'Rød sportsvogn med brede fælge'
så ville jeg lave:

<a href="showone.php?F1=77">Rød sportsvogn med brede fælge</a>

altså vise teksten men sende tallet med over
Avatar billede clausberg Nybegynder
25. juli 2005 - 23:29 #14
Det virker !!!!!
Takker igen :-D
Smid et svar.
Avatar billede arne_v Ekspert
25. juli 2005 - 23:29 #15
screem_brille>

der er ikke nogen som bøjer reglerne

du løser spørgers problem - du får pointene

jeg løser spørgers problem - jeg får pointene

X løser spørgers problem - X får pointene

helt ligesom i alle andre spørgsmål

det forklarede jeg allerede (omend ikke helt så eksplicit) 8 minutter inden
du postede første gang

den eneste fortolkning jeg laver af reglerne er at jeg antager at "stille
spørgsmål" hentyder til opgavens løsning & point uddeling og ikke til
teksten i spørgsmålets titel og body
Avatar billede arne_v Ekspert
25. juli 2005 - 23:33 #16
clausberg>

Iøvrigt er der en PHP kategori http://www.eksperten.dk/spm/Programmering/Script/PHP/
hvor der er meget bedre PHP folk end mig - jeg bruger en del MySQL, men primært
fra andre sprog (Java, C# etc.)
Avatar billede arne_v Ekspert
25. juli 2005 - 23:34 #17
og et svar
Avatar billede screem_brille Novice
25. juli 2005 - 23:35 #18
stille spørgsmål specifikt til én eller flere bestemte personer, med mindre spørgsmålet er på 0 point eller hvis der er tale om lovlig pointoverførsel.

synes nu dette spørgsmål her er ret specifikt stillet til dig arne_v og her er hverken tale om point overførsel eller er på 0 point.

Så hvis det ikke er at bøje reglerne ved jeg ikke helt hvad det er ?
Avatar billede clausberg Nybegynder
25. juli 2005 - 23:35 #19
det vil jeg huske til næste gang... troede blot at mit spørgsmål mer var et mysql relateret spørgsmål og ikke et php... men så har jeg også lært det :-)
Avatar billede arne_v Ekspert
25. juli 2005 - 23:36 #20
læste du det sidste afsnit af 23:29:41 ?
Avatar billede arne_v Ekspert
25. juli 2005 - 23:37 #21
og det var så til screem_brille
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
Computerworld tilbyder specialiserede kurser i database-management

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