Læs felter og vis felter fra tabel

Tags:    php mysql mysqli

Hej

Jeg skal i al sin enkelthed læse og vise felter fra en tabel, men får følgende fejl:
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /customers/e/d/8/roar-pedersen.dk/httpd.www/index.php on line 32

Koden er som følger:
Fold kodeboks ind/udPHP kode 


Jeg har prøvet med
Fold kodeboks ind/udPHP kode 


men fik alle værdier ud som perler på en snor og ikke et enkelt felt (ex. "name").

Jeg kender en del til SQL, men meget lidt til PHP og mysql, såvel som mysqli (er der forskel på de 2?).

Venlig hilsen
Roar



Indlæg senest redigeret d. 12.04.2013 21:36 af Bruger #17591
4 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Tjek dine beskeder.

Edit/forklaring: Denne kommentar var en reminder til, at man bør checke sin copy/paste, så man undgå at lægge sit brugernavn/password på nettet.



Indlæg senest redigeret d. 12.04.2013 21:42 af Bruger #955
>Jeg har prøvet med
det gamle API, dette skal du så hurtig som muligt vær fra, da det udgår af PHP i kommende vertioner af PHP
$con = mysql_connect('localhost', 'mysql_user', 'mysql_password');

denne connection bruges til alle din functioner der starter med mysql_



det forbedrede API
du mangler at angive din database
>$con=mysqli_connect(host,db_user_name,db_user_password, db_name);
så fejlen er god nok du får ikke nogle connection


kig på
http://php.net/manual/en/mysqli.construct.php
Procedural style
Fold kodeboks ind/udKode 


som oop style
Fold kodeboks ind/udKode 


denne connection bruges til alle din functioner der starter med mysqli_ læg mærke til i

så skal du bruge mysqli skal du en af de 2 coder vist ovenfor, brug den der passer dig bedst, da man godt kan blande Procedural style og oop sqyle, med det er skik og brug at holde sig til den ene i et project


på sigt skal du kigge på PDO, da du får mindre vedligeholdelse hvis du skifter database fra mysql til feks mssql eller oracle
kig på http://php.net/manual/en/mysqlinfo.api.choosing.php





Er det rigtig forstået, at PDO er en overbygning - altså indeholder klasser, der kalder videre - til PHP?

ja PDO er en extension/udvidelse til PHP.

PDO (PHP Database Object) er et API (Application Programmering Interface) til din database, på linje med mssql, mysql og mysqli. og andre levenradør specifikke databaser
fordelen ved PDO er at den er 100% object orinteret, og du vil kunne skifte database uden at ændre andet i coden end din connection string, vel og mærke hvis du ikke har brugt noget der er database specifikt i din sql sætninger, feks `back tick` omkring dine felt navne, eller sql functioner der kun virker på en bestemt database.

men hvis du med flere starter med at gå væk fra det gamle mysql API,og begynder at anvende mysqli (Procedural style eller oop style) eller Abstraction Layers PDO, til at kommunikerer med mysql databasen, så er vi godt begyndt.

fremtiden bliver som jeg ser det OOP så vend dig til at bruge den notation, og omskriv den gamle code du evt måtte have skrevet i Procedural style, når du alligevel har fat i den




Tusind tak, så kom der hul igennem!

Er det rigtig forstået, at PDO er en overbygning - altså indeholder klasser, der kalder videre - til PHP?



t