Avatar billede udvikler Nybegynder
15. december 2005 - 16:38 Der er 11 kommentarer og
1 løsning

Fejl på localhost i visse tilfælde

Jeg har opsat php,mysql,phpmyadmin og apache og har testet det hele med et lille nyhedssystem som selvfølgelig kører via mysql. Det hele virkede, alt blev indsat i phpmyadmin og det hele, men derefter prøvede jeg med et større system. Jeg prøvede med et system som består at 6 tabeller i databasen og et forum samt et kæmpe brugerystem samt mere. Når jeg prøvede at teste det, var det ligsom om at den ikke gad connecte til mysql, for jeg fik denne fejl:

Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in c:\wamp\www\mine filer\index.php on line 20

Og jeg har slet ikke brugt brugernavnet ODBC ?
Avatar billede pidgeot Nybegynder
15. december 2005 - 16:45 #1
ODBC er standard-brugernavnet til MySQL i Windows (hvorfor det er det, kan jeg ikke lige huske, men jeg gætter på det har noget med MyODBC at gøre...). Det tyder på der ikke er blevet åbnet en forbindelse inden den query, hvilket får den til at prøve med standardværdierne.
Avatar billede udvikler Nybegynder
15. december 2005 - 16:54 #2
har åbnet forbindelsen ?

linie 19,20 og 21 ser således ud:

include "mysql.php";
$query = mysql_query("SELECT brugernavn FROM brugere ORDER BY point DESC LIMIT 10") or die(mysql_error());
WHILE($topti = mysql_fetch_array($query)) {

så jeg har skam åbnet ?
Avatar billede udvikler Nybegynder
15. december 2005 - 17:03 #3
Jeg har fundet ud af hvorfor, du havde ret, men jeg havde samtidigt også ret :)
jeg havde connectet til databasen, men den opfattede det ikke som php fordi jeg havde skrevet <? og ikke <?php
kan jeg gøre sådan så begge dele virker ligsom "andre" steder ?
Avatar billede pidgeot Nybegynder
15. december 2005 - 17:13 #4
Som standard mener jeg nu det er aktiveret... men hvis du vil kontrollere, kan du åbne din php.ini og se om short_open_tag er sat til 1 (true). Det skal den være for at <? ?>-syntaxen virker.

Det er i øvrigt af netop den grund det anbefales altid at bruge den lange form <?PHP ?> - hvis du ikke selv er serveradministrator, kan du ikke være sikker på at <? ?> er aktiveret.

Smider lige et svar, i øvrigt - du er dog velkommen til at dele pointene hvis du vil :)
Avatar billede udvikler Nybegynder
15. december 2005 - 17:19 #5
Tusinde tak, der stod: short_open_tag = Off så det jeg skal bare rette det til short_open_tag = 1 eller hvad ? lyder fornuftigere med on ?

Læg du bare et svar, for jeg vil give dig point :)
Avatar billede pidgeot Nybegynder
15. december 2005 - 17:22 #6
Hovsa - glemte at vælge svar :)

PHPs dokumentation indikerer at den korrekte værdi er 1, omend on og true sikkert også virker - jeg har dog ikke testet.

Husk på at du skal have PHP til at skrive eventuelle XML-headers ud hvis du har dette slået til - ellers tror PHP bare at det i virkeligheden er PHP-kode du har derinde. :)
Avatar billede pidgeot Nybegynder
15. december 2005 - 17:24 #7
Til reference kan du skrive XML-headeren ud på denne måde:

<?PHP
  echo ("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n");
?>
Avatar billede udvikler Nybegynder
15. december 2005 - 17:25 #8
Endnu engang tak ;)
Avatar billede udvikler Nybegynder
15. december 2005 - 19:11 #9
Det virker ikke!
Jeg har lige prøvet med

short_open_tag = 1
short_open_tag = On
short_open_tag = True

det virker desværre ikke :(

Jeg skal stadig skrive <?php og ikke <?

Og jeg er sikker på at dokumentet bliver gemt (også i den rigtige mappe)

Hvad kan jeg nu gøre ? :)
Avatar billede pidgeot Nybegynder
15. december 2005 - 20:16 #10
Prøv at udkommentere linien - som standard skulle det være slået til.

Check også at der ikke ligger en .htacces fil et sted i mappen med dit script der overrider denne indstilling.
Avatar billede udvikler Nybegynder
16. december 2005 - 07:18 #11
Jo, du har da ret, der var en fil i PHP mappen hvor der var sat til Off :)

Men hvad mente du med at udkommentere linien ?
Avatar billede pidgeot Nybegynder
16. december 2005 - 07:53 #12
Hvis du sætter et semikolon som det første tegn på linien i din php.ini, vil den blive opfattet som en kommentar - hvilket jo så gør at standardværdien vil blive brugt.
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