Gå til innhold

Include, PHP og SQL database [løst]


Anbefalte innlegg

Er ikke sikker på om include funker eller ikke i dette tilfellet, men her er problemet mitt:

 

Har en SQL database med verdiene ID (primærnøkkel), title, year, review, og rating.

 

På den første PHP siden lister jeg opp alle 'title' verdiene.

På den andre siden skal alle verdiene til èn ID skrives ut.

 

'title' verdiene på den første siden skal ha hyperlinker som refererer dem til den andre siden, som skriver ut verdiene basert på hvilken ID den får tilsendt.

 

Kanskje litt vagt forklart, men det er problemstillingen min.

Endret av Radar911
Lenke til kommentar
Videoannonse
Annonse

Hmm, du får med andre ord ikke det til?

Selv pleier jeg å gjøre dette ved å sette tittelens id i urlen.

På denne måten:

<a href="side.php?id=438">Tittel</a>

Derav id=tall er f.eks id=$rad["id"]

Og da på side.php, bruke denne spørringen:

SELECT * FROM tabell WHERE id = '".mysql_escape_string($_GET["id"])."'

Som da henter ut all info fra raden der id er det tallet som er satt i urlen.

 

Hvis jeg forstod riktig. :)

 

eidt: små skrivefeil.

Endret av LoS
Lenke til kommentar

gang på gang på gang må det poengteres at man *aldri* skal sette variable fra forhåndsdefinerte arrays inn i sql queryes!!

 

du har ingen kontroll på hva brukreen skriver i adressefeltet, så aldri sett dette direkte inn i ditt query.

 

mysql_escape_string er et hot tips

Lenke til kommentar

Linkene funker fint, men av en eller annen grunn legger den ikke til id-nummeret til sist (linkene ser slik ut: http://localhost/test/side.php?id=).

 

Beskrivelse av databasen:

+--------+---------+------+-----+---------+----------------+

| Field | Type | Null | Key | Default | Extra |

+--------+---------+------+-----+---------+----------------+

| ID | int(11) | | PRI | NULL | auto_increment |

| Title | text | YES | | NULL | |

| Year | int(11) | YES | | NULL | |

| Review | text | YES | | NULL | |

| Rating | int(11) | YES | | NULL | |

+--------+---------+------+-----+---------+----------------+

 

Den burde jo legge til id-nummeret, men likevel gjør den det ikke. Noen anelse hvorfor?

 

(testa nettopp å skrive ut ID, og det funka fint, men den vil altså ikke legges til linken)

Endret av Radar911
Lenke til kommentar

Får en error når jeg prøver å kjøre koden LoS først skrev (byttet ut side.php med reviews.php som dere ser):

 

Parse error: parse error, unexpected '"' in C:\Program Files\Apache Group\Apache2\htdocs\test\reviews.php on line 50

 

$result = @mysql_query('SELECT * FROM reviews WHERE ID = '".mysql_escape_string($_GET['ID'])."' ');

 

 

eller hvis jeg fjerner klammene:

 

Error performing query: 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 '' at line 1

 

$result = @mysql_query('SELECT * FROM reviews WHERE ID = '.mysql_escape_string($_GET['ID']).' ');

Lenke til kommentar

parse error, unexpected T_ECHO in reviews.php (kom da jeg skrev inn queryet først) :roll:

 

Slik ser koden ut til nå:

 

<?php

 

$result = @mysql_query('SELECT * FROM reviews WHERE ID = '".mysql_escape_string($_GET['ID'])."' ');

if (!$result) {

die('<p>Error performing query: ' . mysql_error() . '</p>');

}

 

//Test for å se om det virker

echo $row['Title'] . '<br />';

 

?>

Endret av Radar911
Lenke til kommentar

Ble kvitt parse erroren, men sitter da enda igjen med èn feil:

 

$result = @mysql_query('SELECT * FROM reviews WHERE ID = '.mysql_escape_string($_GET['ID']).' ');

if (!$result) {

die('<p>Error performing query: ' . mysql_error() .

'</p>');

}

 

Error performing query: 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 '' at line 1

 

Skjønner at du er irritert på parse errors, men sliter faktisk litt, jeg.

Endret av Radar911
Lenke til kommentar

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å
×
×
  • Opprett ny...