Da jeg prøver at hente ting fra en MySQL database, så skriver min
browser:
Warning: mysql_fetch_array(): supplied argument is not a valid
MySQL result resource in /Users/simonpetersen/Sites/test.php on
line 7
Jeg kan ikke finde ud af hvad der er galt.
Her er tutorialen hvor jeg har fået info fra:
http://www.webcafe.dk/artikler/php/phpmysqlforespoergsler/
Jeg håber virkelig I kan hjælpe mig. I kan evt. kontakte mig på
ICQ: 120337331 eller e-mail.
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
Se etter i skriptet ditt om du har noe lignende som dette:
$host = 'localhost';
$brugernavn = 'brukernavn';
$kodeord = 'passord';
$database = 'Navnet på databasen;
mysql_connect($host,$brugernavn,$kodeord)or die("Kan ikke kontakte basen");
mysql_select_db($database);
Mvh
Knut Nordal
"Simon Petersen" <wed...@mail1.stofanet.dk> skrev i melding
news:b9hpio$ji7$1...@sunsite.dk...
her er min PHP-kode:
<?php
$conn = mysql_connect("localhost", "root");
mysql_select_db("user.sql");
$result = mysql_query("select * from user");
while ($row = mysql_fetch_array($result)) {
echo $row["name"];
}
mysql_close($conn);
?>
Ser dette ikke rigtigt ud?
- Simon
Knut Nordal wrote in dk.edb.internet.webdesign.serverside.php:
> Hei
> Dette ser ut som om du mangler koblingen til databasen.
> Dette er som regelt mangelfult ved alle skoler og inføringer som du finner
> på nett.
> De tar for seg alt du kan gjøre med en database men glemmer for
nybegynnere
> at de også skal være en kobling til basen.
> Mulig jeg tar feil men....
>
> Se etter i skriptet ditt om du har noe lignende som dette:
>
> $host = 'localhost';
> $brugernavn = 'brukernavn';
> $kodeord = 'passord';
> $database = 'Navnet på databasen;
>
> mysql_connect($host,$brugernavn,$kodeord)or die("Kan ikke kontakte basen");
> mysql_select_db($database);
>
> Mvh
> Knut Nordal
>
>
> "Simon Petersen" <wed...@mail1.stofanet.dk> skrev i melding
> news:b9hpio$ji7$1...@sunsite.dk...
> > Jeg er nybegynder indenfor PHP og MySQL.
> >
> > Da jeg prøver at hente ting fra en MySQL database, så skriver min
> > browser:
> > Warning: mysql_fetch_array(): supplied argument is not a valid
> > MySQL result resource in /Users/simonpetersen/Sites/test.php on
> > line 7
> >
> > Jeg kan ikke finde ud af hvad der er galt.
> >
> > Her er tutorialen hvor jeg har fået info fra:
> > http://www.webcafe.dk/artikler/php/phpmysqlforespoergsler/
> >
> > Jeg håber virkelig I kan hjælpe mig. I kan evt. kontakte mig på
> > ICQ: 120337331 eller e-mail.
> >
> > --
> > Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
> > - Pædagogiske tutorials på dansk
> > - Kom godt i gang med koderne
> > KLIK HER! => http://www.html.dk/tutorials
>
>
Hvis du har installeret en mysqldatabase på din server (som du også har
installeret på egen maskine) - tjoh.
MEN jeg vil anytime (og for gud ved hvilken gang i den her gruppe)
foreslå at lave lidt fejlhåndtering i forbindelse med mysql-kommandoerne.
Webcafe har det også beskrevet her:
<http://www.webcafe.dk/artikler/php/phpmysqlabstraktioner/> (kan anbefales).
altså:
mysql_connect("localhost", "root") or trigger_error(mysql_error());
du kan definere din error_handler selv, eller du kan bruge det som det
står der, og bruge default i den PHP installation du kører på.
fidusen er at du får brugbare fejlmeddelelser hvis din query ikke
lykkes, og du kan genbruge tricket ved dine mysql_query()-kommandoer.
mvh
Jesper Brunholm
> mysql_select_db("user.sql");
Hedder din database user.sql?
Og kig lige forbi http://www.usenet.dk/netikette/citatteknik.html ;-)
--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop
tak fordi du sagde det... den hedder bare "user" iøvrigt.
det virker nu.. nu mangler jeg bare at flette den ind i noget HTML...
kender I en god tutorial til den slags. Synes ikke rigtig jeg kan finde
en :-(
- Simon
PS. her er min side som jeg har lavet:
http://pc87012.stofanet.dk/~simonpetersen/test.php
Kim Emax wrote in dk.edb.internet.webdesign.serverside.php:
> det virker nu.. nu mangler jeg bare at flette den ind i noget HTML...
> kender I en god tutorial til den slags. Synes ikke rigtig jeg kan
> finde en :-(
Du laver bare en form, der submitter til samme side og tjekker med
if($submit) {
insert into osv....
> PS. her er min side som jeg har lavet:
> http://pc87012.stofanet.dk/~simonpetersen/test.php
Og kig lige forbi http://www.usenet.dk/netikette/citatteknik.html, du
fangede den vist ikke første gang ;-)
Så vil jeg for gud ved hvilken gang i denne gruppe anbefale, at man
bruger PEAR DB
(http://pear.php.net/manual/en/package.database.php#package.database.db),
når man vil tilgå databaser :) Det har mange fordele:
- Man kan i toppen af sit script angive, at alle fejl skal håndteres af
ens egen fejlhåndteringsfunktion. På den måde slipper man for at skrive
"or trigger_error(mysql_error())" efter hver eneste mysql_query().
- PEAR DB virker med stort set alle databaser, som PHP understøtter -
deriblandt MySQL, PostgreSQL, Oracle, ODBC og Microsoft SQL Server (den
fulde liste kan ses på
http://pear.php.net/manual/en/package.database.db.intro-dsn.php).
- PEAR DB er det nærmeste, PHP-miljøet kommer Perls DBI - en fælles API
til SQL-databaser. Når alle bruger samme metode til at tilgå
SQL-databaser, er det meget lettere at læse og ændre andres kode. Lige
nu er der på PHP-fronten 100 forskellige SQL-klasser samt PHP's egne
særskilte funktioner for hver eneste database, der understøttes. Det er
ikke optimalt.
Her er et lille eksempel på nogle databasekald med PEAR DB:
<?php
require_once('DB.php');
# Alle fejl bliver udskrevet direkte - eller (hvis
# programmøren har defineret sin egen fejlhåndterings-
# funktion og kaldt set_error_handler('funktionsnavn'))
# bliver håndteret af programmørens fejlhåndteringsfunktion:
PEAR::setErrorHandling(PEAR_ERROR_TRIGGER);
# Forbinder til databasen:
$db = DB::connect('mysql://brugernavn:adgangskode@vaert/databasenavn');
# Kommando:
$resultat = $db->query('SELECT navn, alder FROM brugere');
while ($raekke = $resultat->fetchRow()) {
echo 'Navn: '.htmlspecialchars($raekke['navn'])."<br/>\n";
echo 'Alder: '.htmlspecialchars($raekke['alder'])."<br/>\n";
}
?>
>- PEAR DB er det nærmeste, PHP-miljøet kommer Perls DBI - en fælles API
>til SQL-databaser.
Er den begyndt at kunne forstå brugen af NULL ved placeholders?
(jeg tror et eller andet sted, at kampen for PEAR og placeholders
bliver hindret af at folk er vant til magic_quotes... :-/ )
--
- Peter Brodersen
Jeg har ikke afprøvet det, må jeg indrømme.