Gå til innhold

Rediger-funksjon til gjestebok-script


Anbefalte innlegg

ja, den er satt i config.php. Kanskje jeg nå include config.php en annen plass for at det skal fungere?

tror ikke du trenger å includere config.php noen andre steder.

Du kan sette en liten test for å se om hvor passordet droppes, dersom su legger in config.php blir det litt letter for oss å finne ut hor feilen kan være.

 

echo 'pass='.$mySQLpass; vil etter config.php includeringen vil vise deg om den har blitt satt eller ei.

 

Du må passe på at variablen in config.php har samme bokstaver, stor og små, siden variablen er case sensitive.

 

$mySQLpass vil ikke være lik $mysqlpass.

Lenke til kommentar
Videoannonse
Annonse

Når jeg testet med koden nedenfor skrev den passordet, ja..

 

<?php
include("config.php");
echo"$mySQLpass"; 
?>

 

kan det være noe galt med "ene? Slik at den skriver $mySQLpass direkte av i stedet for å skrive variabelen?

 

config.php

<link rel="stylesheet" type="text/css" href="style.css">
<?php
// Configuration file

$pathList  = "./shownews.php"; // Path to shownews.php
$yourname       = "admin"; //Write your name here

// mySQL configuration

$mySQLhost              = "localhost";
$mySQLuser  = "admin";
$mySQLpass  = "********";
$mySQLdb          = "news";
$mySQLtable  = "nyhet";

// Messages
$regSuccess	= "Innlegget ble registrert! <p><a href='$pathList'>Les innlegg!</a></p>";
$regFailed	= "<a>Ditt innlegg ble ikke registrert. Prøv igjen senere!</a><p><a href='$pathList'>Tilbake</a></p>";

// Miscs
$TableWidth     = "50%";
$SmileyDir  = "smileys";      

?>

Endret av Tha_Zaynt
Lenke til kommentar

Hvor setter du denne variablen? if ($_SESSION['auth']) finner ikke noen henvisninger til hvor denne settes i hverken config.php eller rediger.php (antar at du har en login el. Dersom du ikke g[r innom og setter session auth , vil ikke systemet ha en connection til databasen din og du vil få en feilmelding.

 

Prøv å sette det flgende utenfor if løkken for session['auth'] evt sørg for at session auth er satt først:

 

$dbc = mysql_connect($mySQLhost, $mySQLuser, $mySQLpass);

mysql_select_db($mySQLdb, $dbc);

Lenke til kommentar

Når jeg tok bort alt som hadde med innlogging å gjøre, kom jeg til denne feilen igjen;

 

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in c:\appserv\www\news\rediger.php on line 27

 

Nå ser koden slik ut btw:

 

rediger.php

ink href="style.css" rel="stylesheet" type="text/css">
<?php

include ("config.php");

$dbc = mysql_connect($mySQLhost, $mySQLuser, $mySQLpass);
mysql_select_db($mySQLdb, $dbc); 

$id = $_GET['id'];
$navn = $_POST['navn'];
$tittel = $_POST['tittel'];
$nyhet = $_POST['nyhet'];
$dato = $_POST['dato'];

if ($_GET['Lagre'] == 'Update'){ //sjekker om lagre er satt til Update vil du oppdatere
if(!empty($navn) && !empty($tittel) && !empty($nyhet) && !empty($dato) ){ // sjekk at alle variablene er der.++ resten av variable
$query = "UPDATE $mySQLtable SET navn = '$navn',tittel = '$tittel',nyhet = '$nyhet' WHERE id = '$id' LIMIT 1";
$result= mysql_query($query) or die ("Could not execute UPDATE query : $query." . mysql_error());
}else {
echo 'Du mangler en variabel';
}

} // End if GET['lagre']
if (!empty($id)){  // dersom id er satt vil du hente inn verdiene
$query = "SELECT * FROM $mySQLtable WHERE id = $id"; 
$result= mysql_query($query) or die ("Could not execute SELECT query : $query." . mysql_error()); 
$row = mysql_fetch_object($query);
$LagreVal= 'Update';  // Dersom id er satt vil du sette submit value to update
}else{
$lagreVal = 'Save';
}// end if myql for update of post

echo '
<form method="post" action="?action=save_changes&id=' . $id . '">
<p>Navn<br /><input type="text" name="navn" maxlength="30" size="30" value="' . $row->navn . '" /></p>
<p>Overskrift<br /><input type="text" name="tittel" maxlength="30" size="30" value="' . $row->tittel . '" /></p>
<p>Nyhet<br /><textarea name="nyhet" cols="47" rows="10">' . $row->nyhet . '</textarea></p>
<input type="submit" name="Lagre" value="$lagreVal" />
</form>';

?>

Endret av Tha_Zaynt
Lenke til kommentar

Jepp! Det fikset vertfall mysql_fetch problemet.

Har imidlertid et annet problem',

når jeg har oppdatert innholdet, og trykker på update, skjer det ingenting..URL'n skifter fra http://orkdal.servebeer.com/news/rediger.php?id=012 til http://orkdal.servebeer.com/news/rediger.p..._changes&id=012 men det er det eneste...

 

Dere kan prøve å teste redigerfunskjonen selv,ved å trykke her

Endret av Tha_Zaynt
Lenke til kommentar

Fant en feil her :if ($_GET['Lagre'] == 'Update'){

Skal være : if ($_POST['Lagre'] == 'Update'){

 

Ser ikke helt grunnen til at du har satt action="?action=save_changes&id=' . $id . '">

 

I ditt tilfelle tror jeg at du kan sette action=""

 

Dette :<input type="submit" name="Lagre" value="$lagreVal" />

M[ skiftes til: <input type="submit" name="Lagre" value="'.$lagreVal.'" />

Lenke til kommentar

if(!empty($navn) && !empty($tittel) && !empty($nyhet) && !empty($dato) ){

 

Fjern && !empty($dato) siden den ikke hentes inn fra form. skal du oppdatere den må du redigere query strengen også

 

Du har $lagreVal og $LagreVal de må være det samme..

Endret av joffar
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...