Gå til innhold

får ikke postet nyheter med mitt script.. hjelp


Anbefalte innlegg

Hei

jeg har satt sammen et script nå og det funker som det skal men da jeg la på ett login system så vil ikke nyhetene mine postes noe mer.

 

Her er koden

<?php
$username = "bruker";
$password = "passord";

if ($_POST['txtUsername'] != $username || $_POST['txtPassword'] != $password) {

?>


<h1>Login</h1>

<form name="form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">

<p><label for="txtUsername">Username:</label>

<br /><input type="text" title="Enter your Username" name="txtUsername" /></p>

<p><label for="txtpassword">Password:</label>

<br /><input type="password" title="Enter your password" name="txtPassword" /></p>

<p><input type="submit" name="Submit" value="Login" /></p>
</form>
<?php
}

else {



?>
<?php

if (!isset($_POST['submit'])) {

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html>
<head>
  <title>Micro News</title>
  <link href="style/style.css" rel="stylesheet" type="text/css" />
  <script language="javascript" type="text/javascript" src="js/tiny_mce.js"></script>
<script language="javascript" type="text/javascript">
tinyMCE.init({
mode : "textareas",
theme : "advanced",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",

});
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><style type="text/css">
<!--
body {
background-image: url(mainframeBG.png);
background-repeat: repeat;
}
.style1 {color: #FFFFFF}
body,td,th {
font-family: Arial, Helvetica, sans-serif;
}
.style2 {color: #FF0000}
-->
</style></head>

<body>
 <div id="main">
<div class="style2" id="caption">Steezy News - Add news</div>
  <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
	News title:<br/>
	<input type="text" name="title" size="40"/><br/><br/>
	Content:<br/>
	<textarea name="newstext" rows="15" cols="67"></textarea><br/>
	<center><input type="submit" name="post" value="Save" /></center>
 </form> 

	 <div class="style1" id="source"></div>
</div>
</body>   

<?php } else {
  $newsTitel   = isset($_POST['title']) ? $_POST['title'] : 'Untitled';
  $submitDate  = date('Y-m-d g:i:s A');
  $newsContent = isset($_POST['newstext']) ? $_POST['newstext'] : 'No content';

  $filename = date('YmdHis');
  $f = fopen('news/'.$filename.".txt","w+");		 
  fwrite($f,$newsTitel."\n");
  fwrite($f,$submitDate."\n");
  fwrite($f,$newsContent."\n");
  fclose($f);


  header('Location:index.php');   
}
?>
<?php



}



?>

 

når jeg fjerner login koden så funker det andre..

men må få de begge til å funke og jeg vet ikke hva som er feil..

Lenke til kommentar
Videoannonse
Annonse

Får du noen feilmeldinger?? Kan hjelpe litt det ;)

 

Edit: Er det sånn at innloggings boxen kommer opp når du skal legge inn nyheten(når du trykker på submit)? Vis det så kan du google på login script med session eller cookie..

Endret av dannyboy_1992_
Lenke til kommentar

øhhm, ingenting i dette scriptet krever noe som helst MySQL eller shit.

Problemet ligger vel heller i at innloggingen i dette scriptet ikke er noen inlogging i det hele tatt. Det eneste den gjør er å sjekke om passord _eller_ brukernavn er rett. (noe som blir helt feil, både brukernavn _og_ passord må jo stemme). men problemet ligger i at når du poster brukernavn og passord er POST[txtUsernavn] og POST[txtPassord] riktig og du vil se skjemaet for nyheter. MEN, når du da skal submite dette skjemaet, kjøres hele koden på nytt og da er jo ikke POST[txtUsernavn] og POST[txtPassord] satt lenger og du vil dermed se innloggingsskjemaet og nyheten ble aldri lagt til.

Endret av alec1
Lenke til kommentar

Fo å gjøre det veldig enkelt kan du legge til disse to linjene i form'en for nyheter.

<input type="hidden" name="txtUsername" value="<?php echo $_POST['txtUsername']; ?>" />
<input type="hidden" name="txtPassword" value="<?php echo $_POST['txtPassword']; ?>" />

Endret av alec1
Lenke til kommentar

Jeg bygge om scripte ditt jeg, nå slår du inn brukernavn og passord når du skal legge inn nyheten din:

<?php
ob_start();

$brukernavn = "BRUKERNAVN";
$passord = "PASSORD";

if(isset($_POST['submit'])) {

$bruker = $_POST['bruker'];
$pass = $_POST['pass'];

if($bruker == "$brukernavn" && $pass == "$passord") {

$newsTitel   = isset($_POST['title']) ? $_POST['title'] : 'Untitled';
  $submitDate  = date('Y-m-d g:i:s A');
  $newsContent = isset($_POST['newstext']) ? $_POST['newstext'] : 'No content';

  $filename = date('YmdHis');
  $f = fopen('news/'.$filename.".txt","w+");		
  fwrite($f,$newsTitel."\n");
  fwrite($f,$submitDate."\n");
  fwrite($f,$newsContent."\n");
  fclose($f);


  header('Location:index.php'); 

} else {
echo("Feil brukernavn eller passord!");
}

} else {

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html>
<head>
  <title>Micro News</title>
  <link href="style/style.css" rel="stylesheet" type="text/css" />
  <script language="javascript" type="text/javascript" src="js/tiny_mce.js"></script>
<script language="javascript" type="text/javascript">
tinyMCE.init({
mode : "textareas",
theme : "advanced",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",

});
</script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><style type="text/css">
<!--
body {
background-image: url(mainframeBG.png);
background-repeat: repeat;
}
.style1 {color: #FFFFFF}
body,td,th {
font-family: Arial, Helvetica, sans-serif;
}
.style2 {color: #FF0000}
-->
</style></head>

<body>
 <div id="main">
<div class="style2" id="caption">Steezy News - Add news</div>
  <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
	News title:<br/>
	<input type="text" name="title" size="40"/><br/><br/>
	Content:<br/>
	<textarea name="newstext" rows="15" cols="67"></textarea><br/>

<br />Brukernavn: <input type="text" name="bruker" />

<br />Passord: <input type="password" name="pass" /></p>
	<center><input type="submit" name="submit" value="Lagre" /></center>
 </form>

 <div class="style1" id="source"></div>
</div>
</body>   
<?php

}

?>

 

Det skal funke, får ingen feilmeldinger hvertfall :)

Endret av dannyboy_1992_
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å
×
×
  • Opprett ny...