|
| Hjælp til database... Fra : kaptajnkaber | Vist : 5038 gange 265 point Dato : 10-06-04 01:22 |
|
Ohøj, nu er jeg vist kommet ud på dybt vand...
Jeg ville gerne have en gæstebog lavet med PHP og Flash og har fundet en fin én på nettet. Når jeg så vil loade den får jeg følgende meddelelse:
Citat Warning: mysql_connect(): Access denied for user: 'root@localhost' (Using password: NO) in /customers/risktaker.dk/risktaker.dk/httpd.www/light/GuestBook.php on line 12
Error in GuestBook Application: Access denied for user: 'root@localhost' (Using password: NO) |
Så vidt jeg ved skal jeg jo have en database. Men hvad er det lige det er??? Jeg har en fil der hedder Guestbook.php :
Citat <?
$DBhost = "localhost"; // Database Server
$DBuser = "root"; // Database User
$DBpass = ""; // Database Pass
$DBName = "turorials"; // Database Name
$table = "guestbook"; // Database Table
$numComments = 10; // Number of Comments per page
// Connect to mySQL Server
$DBConn = mysql_connect($DBhost,$DBuser,$DBpass) or die("Error in GuestBook
Application: " . mysql_error());
// Select mySQL Database
mysql_select_db($DBName, $DBConn) or die("Error in GuestBook Application: " .
mysql_error());
// Part Two - Choose what action to perform
$action = $_GET['action'];
switch($action) {
case 'read' :
// Fetch all comments from database table
$sql = 'SELECT * FROM `' . $table . '`';
$allComments = mysql_query($sql, $DBConn) or die("Error in GuestBook
Application: " . mysql_error());
$numallComments = mysql_num_rows($allComments);
// Fetch page-wise comments from database table
$sql .= ' ORDER BY `time` DESC LIMIT ' . $_GET['NumLow'] . ', ' .
$numComments;
$fewComments = mysql_query($sql, $DBConn) or die("Error in GuestBook
Application: " . mysql_error());
$numfewComments = mysql_num_rows($fewComments);
// Generate Output for Flash to Read
print '&totalEntries=' . $numallComments . '&';
print "<br>&entries=";
if($numallComments == 0) {
print "No entries in the guestbook, as yet..";
} else {
while ($array = mysql_fetch_array($fewComments)) {
$name = mysql_result($fewComments, $i, 'name');
$email = mysql_result($fewComments, $i, 'email');
$comments = mysql_result($fewComments, $i, 'comments');
$time = mysql_result($fewComments, $i, 'time');
print '<b>Name: </b>' . $name . '<br><b>Email: </b>' . $email .
'<br><b>Comments: </b>' . $comments . '<br><i>Date: ' . $time . '</i><br><br>';
$i++;
}
}
// Print this only when there aren't any more entries..
if($_GET['NumLow'] > $numallComments) {
print 'No More Entries!&';
}
break;
case 'write' :
// Recieve Variables From Flash
$name = ereg_replace("&", "%26", $_POST['yourname']);
$email = ereg_replace("&", "%26", $_POST['youremail']);
$comments = ereg_replace("&", "%26", $_POST['yourcomments']);
$submit = $_POST['submit'];
// Current system date in yyyy-mm-dd format
$submitted_on = date ("Y-m-d H:i:s",time());
// Check if its submitted from Flash
if($submit == 'Yes'){
// Insert the data into the mysql table
$sql = 'INSERT INTO ' . $table .
' (`ID`,
`name`,
`email`,
`comments`,
`time`
)
VALUES
(\'\','
. '\'' . $name . '\','
. '\'' . $email . '\','
. '\'' . $comments . '\','
. '\'' . $submitted_on . '\'
)';
$insert = mysql_query($sql, $DBConn) or die("Error in GuestBook
Application: " . mysql_error());
print "&gb_status=Thank you for signing my guestbook.&done=yes&";
return;
}
print "&_root.write.gb_status=Error!&";
break;
}
?> |
og en fil der hedder instal_guestbook.sql :
Citat CREATE TABLE guestbook (
ID int(5) NOT NULL auto_increment,
name text NOT NULL,
email text NOT NULL,
comments text NOT NULL,
time datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (ID)
) |
og så selvfølgelig min flash-fil (gbv2.swf) som jeg regner med virker som den skal.
Jeg må desværre tilstå, at jeg ikk forstår ret meget af det hele... Så ville være meget glad hvis nogen vidste lidt om databaser og kunne forklare mig lidt. Er det ikk noget man laver med Access?!? Er helt på bar bund...
Hjælp mig! Jeg ved ikke hvad jeg skal spørge om Vil bare have den til at virke...
| |
|
$DBConn = mysql_connect($DBhost,$DBuser,$DBpass) or die("Error in GuestBook
I ovenstående skal dine login informationer til din database stå (adressen, brugernavn, password)
En database skal du have oprettet igennem din domæneudbyder....
Jeg ejer f.eks www.krildesign.dk og hvis jeg skal ændre i min DB går jeg ind på www.phpmyadmin.krildesign.dk hvor jeg har et overblik over min DB
filen instal_questbook.sql er en fil der opretter de tabeller og lign der er brug for til den gæstebog du har downloaded
| |
|
og lige lidt mere generelt:
en database er der hvor du opbevarer de oplysninger brugeren på dit site har indtastet (eller de informationer DU har indtastet)
PHP arbejder sammen med en MySQL database som bliver oprettet sammen med dit webhotel (eller det er hvertfald meningen)
f.eks hos b-one er Mysql databasen automatisk oprettet, hvor man hos f.eks CLICHE skal bede dem om at oprette den.
så måske eksisterer den ikke engang hos dig...............
| |
|
Jaja, der er nogen der kan
Jeg har webhotel hos b-one og jeg har MySQL informationerne. Er det så min database eller hva? Er du tilfrads med phpmyadmin til at organisere den?
Hvis nu vi siger mit password osv er følgende, hvordan skal det så helt præcis stå?
MySQL:
Host: localhost
Database: haps_dk
Brugernavn (User): haps_dk
Kodeord (Password): haps
foreløbig mange tak!
Vh KK
| |
|
Hov, så havde jeg allerede login til phpmyadmin... Her kan jeg så vælge create database... Kan jeg få lidt hjælp?
Vh KK
| |
| Accepteret svar Fra : Interkriller | Modtaget 265 point Dato : 10-06-04 13:11 |
|
$DBhost = "localhost"; // Database Server
$DBuser = "haps_dk"; // Database User
$DBpass = "haps"; // Database Pass
$DBName = "haps_dk"; // Database Name
$table = "guestbook"; // Database Table
$numComments = 10; // Number of Comments per page
$DBConn = mysql_connect($DBhost,$DBuser,$DBpass)
Så burde du være tilsluttet DB
Jeg lidt i tvivl om hvordan du bruger den fil der hedder instal_questbook.sql, men måske bliver informationerne i den smidt automatisk ind i DB. Er som sagt lidt usikker på det, men.......
Du kan også vælge at kopiere:
CREATE TABLE guestbook (
ID int(5) NOT NULL auto_increment,
name text NOT NULL,
email text NOT NULL,
comments text NOT NULL,
time datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (ID)
)
så går du ind i phpmyadmin, trykker på "haps_dk" (hvis dette er navnet på din DB) så tryker du på fanebladet der hedder sql. Derinde skal du smide ovenstående ind og tryk på "udfør"
Så burde den være der
| |
|
Det må jeg sq sige - nu virker det!!!
Det havde jeg aldrig troet... Tusind tak for hjælpen!!!
Vh KK
| |
|
Glad for at høre det virkede, god fornøjelse med det!
| |
| Du har følgende muligheder | |
|
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.
Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
| |
|
|