Avatar billede jih Nybegynder
14. februar 2004 - 21:13 Der er 35 kommentarer og
3 løsninger

gæstebog: Access denied for user: 'usr@localhost'

Jeg har lige lavet en gæstebog med PHP som bruger MySQL... men jeg kan ik skrive i gæstebogen ?
link: http://webpsycho.users.whitehat.dk/guestbook/display.php

er der nogen som kan hjælpe med det her ?

p.s. det skal lige siges at jeg aldrig har brugt MySQL før lige idag, så hvis der er noget der skal forklares om det, og hvordan man bruger det, så forklar lige "noobish" ;-)
Avatar billede eds Nybegynder
14. februar 2004 - 21:15 #1
Du bruger et forkert brugernavn eller password.
Avatar billede jih Nybegynder
14. februar 2004 - 21:18 #2
jamen jeg har ik sat nogen bruger eller password på nogle steder henne... ?
Avatar billede eds Nybegynder
14. februar 2004 - 21:18 #3
må jeg se din kildekode?
Avatar billede jih Nybegynder
14. februar 2004 - 21:20 #4
jeg har rimelig mange af dem... men wrapperclass.php (som der jo står at fejlen er i) er her:
---
<?php
       
/****************************************************
      Wrapper class around mysql database.
*****************************************************/
class GuestInterface
{

  /****************************************************
      Construct
  *****************************************************/
  function GuestInterface()
  {


  }

  /*****************************************************************************
      Methods for the database
  ******************************************************************************/

   
  /****************************************************
      Connects to database
  *****************************************************/
  function Connect()
  {
      $host = "localhost";
      $username = "usr";
      $password = "psw";
      $database = "mydb";
      $server = mysql_connect($host, $username, $password) or die(mysql_error());           
      $connection = mysql_select_db($database, $server);
   
      return $server;
  }

  /****************************************************
      Disconnect from database
  *****************************************************/
  function Disconnect($server)
  {
      mysql_close($server);
  }


   
  /****************************************************
      Get info from all the users
  *****************************************************/
    function getGuestBook()
    {
            $rs = mysql_query("SELECT * FROM tutGuestBook ORDER BY ID DESC") or die(mysql_error());
          return $rs;
    }
   
  /****************************************************
      Get a uniq id that we will use for making the file
  *****************************************************/
    function getUniqID($name, $title)
    {
            $rs = mysql_query("SELECT * FROM tutGuestBook WHERE Name = '$name' AND Topic = '$title' ORDER BY ID DESC") or die(mysql_error());
          return $rs;
    }

  /****************************************************
      Add to guestbook
  *****************************************************/
  function addToGuestBook($name, $title)
  {
      $sql = mysql_query("INSERT INTO tutGuestBook VALUES ( '', '$name', '$title'  ) ")or die(mysql_error());   
  }


  /*****************************************************************************
      Methods for making and deleting files
  ******************************************************************************/
 
   
  /****************************************************
      This method make a file, and takes the filename as an argument
  *****************************************************/
    function makeFile($filename, $content)
    {
      $content = stripslashes($content);
      $fp = fopen($filename,"w") or die ("Error opening file in write mode!");
      fputs($fp,$content);
      fclose($fp) or die ("Error closing file!");
    }
   

  /****************************************************
      This method display the data in a file
  *****************************************************/
    function displayFile($filename)
    {
    if (!file_exists($filename))
        {
        echo "Couldn't find datafile, please contact administrator!";
    }
    else
        {
        $newfile = fopen($filename,"r");
        $content = fread($newfile, filesize($filename));
      fclose($newfile);
    }


    $content = stripslashes($content);
    $content = htmlentities($content);
    $content = nl2br($content);
   
    echo $content;
  }
   
}
?>
Avatar billede eds Nybegynder
14. februar 2004 - 21:21 #5
se der hvor at der står:
$username = "usr";
$password = "psw";

skal du skrive dit brugernavn og password.
Avatar billede jih Nybegynder
14. februar 2004 - 21:21 #6
MySQL kode her:
---
CREATE TABLE `tbGuestBook` (
`ID` INT AUTO_INCREMENT,
`Name` CHAR( 75 ) NOT NULL ,
`Topic` CHAR( 50 ) NOT NULL ,
UNIQUE (
`ID`
)
);
Avatar billede jih Nybegynder
14. februar 2004 - 21:22 #7
ok... mit problem er .... jeg har ik noget brugernavn eller password... altså.. har ik valgt noget..
Avatar billede eds Nybegynder
14. februar 2004 - 21:22 #8
nej, men det skal du have fra dem som hoster din side.
Avatar billede jih Nybegynder
14. februar 2004 - 21:23 #9
oh... my bad... prøver lige igen..
Avatar billede jih Nybegynder
14. februar 2004 - 21:24 #10
øv... jeg tror jeg skal gå det hele igennem... nu viser den "no database selected"... skal jeg skifte tutGuestBook ud med tbGuestBook eller ?
Avatar billede eds Nybegynder
14. februar 2004 - 21:24 #11
nårr, jamen så er du på rette kurs.
Avatar billede eds Nybegynder
14. februar 2004 - 21:25 #12
så der hvor at der står:
$database = "mydb";
skal du bare skrive databasens navn.
Avatar billede jih Nybegynder
14. februar 2004 - 21:25 #13
og jeg går ud fra at disse felter skal skiftes ud ?

      $host = "localhost"; // <--- skal den bare være localhost ?
      $username = "usr"; // <--- har jeg fået ordnet
      $password = "psw"; // <--- har jeg fået ordnet
      $database = "mydb"; // <--- hvad skal den være ? :S
Avatar billede eds Nybegynder
14. februar 2004 - 21:27 #14
ja, men det ser ud til at du bare mangler at udfylde "database" alle de andre er højst sandsynligt udfyldt korekt, hvis ikke den siger andet end "no database selected"...
Avatar billede jih Nybegynder
14. februar 2004 - 21:28 #15
men hvad skal $database's værdi så være ? :S bare tabellen ? eller MySQL ? eller hvad ? :S
Avatar billede eds Nybegynder
14. februar 2004 - 21:30 #16
ehm.. når du logger ind i din phpmyadmin skulle der gerne være et sted hvor du kan se hvad navnet på din database er.
Avatar billede jih Nybegynder
14. februar 2004 - 21:32 #17
hmmm..... der står flg.:
---
Welcome to phpMyAdmin 2.5.5-pl1
MySQL 4.0.17 running on localhost as webpsycho@localhost
---
og:
---
Home
webpsycho  (1)
  tbGuestBook
---
se.. ud fra det ville jeg sige at navnet er webpsycho eller tbGuestBook... men webpsycho er jo mit brugernavn og tbGuestBook er min tabel... og jeg har sådan set ik skrevet noget andet derinde... bortset fra min adgangskode selvf... :S
Avatar billede eds Nybegynder
14. februar 2004 - 21:34 #18
ehm.. ude i venstre side, hjørnet oppe i toppen skulle der være et stede hvor at der står navnet på den database du bruger.
Avatar billede jih Nybegynder
14. februar 2004 - 21:35 #19
hmmm.... det var det der stod der.... "Welcome to...." var øverst... "Home ..." var helt ude til venstre... og imellem dem er der kun et billede... så jeg forstår ik helt... har du ik en email jeg kan sende screenshot til ? eller noget ?
Avatar billede eds Nybegynder
14. februar 2004 - 21:36 #20
jo, bare send den til info@trovaerdig.dk
Avatar billede jih Nybegynder
14. februar 2004 - 21:43 #21
er sendt..
Avatar billede eds Nybegynder
14. februar 2004 - 21:43 #22
der godt nok ikke kommet nogen:

info@trovaerdig.dk
Avatar billede jih Nybegynder
14. februar 2004 - 21:45 #23
sendt igen... til info@trovaerdig.dk
Avatar billede eds Nybegynder
14. februar 2004 - 21:52 #24
Din databases navn er: "webpsycho"
Avatar billede jih Nybegynder
14. februar 2004 - 21:53 #25
ait... takker.. prøver igen..
Avatar billede jih Nybegynder
14. februar 2004 - 21:55 #26
lol... ny fejl...
Avatar billede eds Nybegynder
14. februar 2004 - 21:55 #27
hehe, hva' nu.
Avatar billede jih Nybegynder
14. februar 2004 - 21:57 #28
nu er det pga. en anden fil.... noget med en txt fil der ik findes.. :-O
Avatar billede eds Nybegynder
14. februar 2004 - 21:57 #29
hmm..
Avatar billede jih Nybegynder
14. februar 2004 - 21:59 #30
nu er det vist noget andet :-O
---
Warning: fopen(../guestbook/files/guest3.txt): failed to open stream: Permission denied in /usr/home/whitehat_dk/users/webpsycho/guestbook/wrapperclass.php on line 86
Error opening file in write mode!
Avatar billede eds Nybegynder
14. februar 2004 - 22:00 #31
jamen du skriver jo heller ikke databasen, du skriver jo i en fil.
Avatar billede jih Nybegynder
14. februar 2004 - 22:04 #32
hmmmm... kan du se fejlen her? :
(ved ik 100% om fejlen ligger lige her... men højst sandsynligvis) nu viser den ingen fejlmeddelelser, men skriver heller ik noget ud til siden :-O
---
<?
$name    = $HTTP_POST_VARS['txtName'];
$title  = $HTTP_POST_VARS['txtTitle'];
$message = $HTTP_POST_VARS['txtaMessage'];

/*******************************************************************************
    puts name and title into the table
*******************************************************************************/
//include file for the wrapperclass
include "../guestbook/wrapperclass.php";

//make an object of the wrapperclass
$guest=new GuestInterface();

//make db connection
$guestpointer=$guest->connect();

//insert record
$guest->addToGuestBook($name, $title);

$rs = $guest->getUniqID($name, $title);

if ($row=mysql_fetch_assoc($rs))
{
  $filename = "../guestbook/files/guest".$row['ID'].".txt";
}

//disconnect to db
$guest->Disconnect($guestpointer);

/*******************************************************************************
    puts message into a file
*******************************************************************************/

//make file and insert content
$guest->makeFile($filename, $message);

//Redirct to the display php
header("Location: ../guestbook/display.php");

?>
Avatar billede eds Nybegynder
14. februar 2004 - 22:05 #33
mangler du ikke at give den her side login oplysningerne også<?
Avatar billede jih Nybegynder
14. februar 2004 - 22:07 #34
nej tror jeg ik... fordi jeg får jo ingen fejlmeddelelser mere... og den connecter kun til databasen engang jo.... men min fejl er at beskederne ik kommer på siden... men så kom jeg lige i tanker om at der er ingen kode på display.php.... hmmm.... har jeg glemt... men... hvordan skulle jeg så gøre det ? hvis jeg skal skrive fra en fil og ud til dokumentet ?
Avatar billede jih Nybegynder
14. februar 2004 - 22:07 #35
dokumentet = siden
Avatar billede eds Nybegynder
14. februar 2004 - 22:15 #36
hmm... det ved jeg ikke, jeg har ikke så meget forstand på php jeg vidste bare hvad de feljmeddelesler du fik betød.
Avatar billede jih Nybegynder
14. februar 2004 - 22:16 #37
nå pis.... så må vi se om jeg kan finde ud af det.. hehe... men jeg takker for hjælpen... jeg kom da af med fejlmeddelelserne :-)
Avatar billede eds Nybegynder
14. februar 2004 - 22:17 #38
Selv tak, og tak for point :)
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