Login System

GoldenEye

Erfahrenes Mitglied
Hi,

Ich habe ein großes Problem.

Mein login System funktioniert nicht mehr. ( Ich habe dieses Hier´: http://www.tutorials.de/forum/php-tutorials/9684-php-mysql-login-system-mit-sessions.html )

und zwar kommt folgende Fehler, wenn ich eine Seite aufrufe:

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at XXX/web/admin/page_edit.php:10) in XXX/web/login_check.php on line 2

Warning: Cannot modify header information - headers already sent by (output started at XXX/web/admin/page_edit.php:10) in XXX/web/login_check.php on line 5l

Man kann die Seite aber leider mit vollem Umfang aufrufen.

An der login_check habe ich nicht rumgespielt, das ist die original datei wie im Tutorial.

Gruß
 
Der Fehler sagt dir das die Session vor der Browserausgabe gestartet werden muss. Aber zeig einfach mal dein Skript her.
 
so also ich schreibe jetzt einfach mal all relevanten codes der dateien. Da ich ein templatessystem habe sind das nicht wenige, deswegen verzichte ich auf die unwichtigen....


aufgerufen wird die page_edit.php

PHP:
<html>
<head>


</head>




<?php

    error_reporting(E_ALL);
include ("../login_check.php");
    include 'config.php';

    @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());
    mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());


include "style/header_editor.tpl"; 

?>


<?php


if(!isset($_POST['sub_post'])){
$row = mysql_fetch_assoc(mysql_query("SELECT head,data, id FROM page WHERE id = $_GET[id]"));
echo "<form method=\"POST\" action=\"$_SERVER[PHP_SELF]\">";
echo "<p><input type=\"text\" name=\"sort\" value=\"".$row['head']."\"/></p><br/><textarea name=\"data\" rows=\"10\" cols=\"50\" >".$row['data']."</textarea>";
?><html><br/><html><?php
echo "<input type=\"submit\" name=\"sub_post\">";
echo "<input type=\"hidden\" name=\"id\" value=\"".$row['id']."\">";
echo "</form>";
}
if(isset($_POST['sub_post'])){
mysql_query("UPDATE `page` SET `data` = '$_POST[data]' WHERE `id` = '$_POST[id]'");
mysql_query("UPDATE `page` SET `head` = '$_POST[head]' WHERE `id` = '$_POST[id]'");
echo " Ihre Anfrage konnte erfolgreich ausgeführt werden.";
}
?> 

</body>

</html>

die includet ganz am anfang die header_editor.tpl

PHP:
<html>
<head>
<title>Administrations Center</title>
<script language="javascript" type="text/javascript" src="../tinymce/jscripts/tiny_mce/tiny_mce.js"></script>
<script language="javascript" type="text/javascript">
	tinyMCE.init({
		mode : "textareas",
		theme : "advanced",
		plugins : "style,layer,table,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras",
		theme_advanced_buttons1_add_before : "save,newdocument,separator",
		theme_advanced_buttons1_add : "fontselect,fontsizeselect",
		theme_advanced_buttons2_add : "separator,insertdate,inserttime,preview,separator,forecolor,backcolor,advsearchreplace",
		theme_advanced_buttons2_add_before: "cut,copy,paste,pastetext,pasteword,separator,search,replace,separator",
		theme_advanced_buttons3_add_before : "tablecontrols,separator",
		theme_advanced_buttons3_add : "emotions,iespell,media,advhr,separator,print,separator,ltr,rtl,separator,fullscreen",
		theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,|,visualchars,nonbreaking",
		theme_advanced_toolbar_location : "top",
		theme_advanced_toolbar_align : "left",
		theme_advanced_path_location : "bottom",
		content_css : "example_full.css",
	    plugin_insertdate_dateFormat : "%Y-%m-%d",
	    plugin_insertdate_timeFormat : "%H:%M:%S",
		extended_valid_elements : "hr[class|width|size|noshade],font[face|size|color|style],span[class|align|style]",
		external_link_list_url : "example_link_list.js",
		external_image_list_url : "example_image_list.js",
		flash_external_list_url : "example_flash_list.js",
		media_external_list_url : "example_media_list.js",
		file_browser_callback : "fileBrowserCallBack",
		theme_advanced_resize_horizontal : false,
		theme_advanced_resizing : true,
		nonbreaking_force_tab : true,
		apply_source_formatting : true
	});

	function fileBrowserCallBack(field_name, url, type, win) {
		// This is where you insert your custom filebrowser logic
		alert("Example of filebrowser callback: field_name: " + field_name + ", url: " + url + ", type: " + type);

		// Insert new URL, this would normaly be done in a popup
		win.document.forms[0].elements[field_name].value = "someurl.htm";
	}
</script>
<link rel="stylesheet" type="text/css" href="style/style.css">
</head>
<body>

<ul id="Navigation">
  <li><a href="index.php">News</a></li>
  <li><a href="news_insert.php">News eintragen</a></li>
  <li><a href="feed.php">Feedback</a></li>
  <li><a href="guest.php">Gästebuch</a></li>
  <li><a href="upload.php">Downloads</a></li>
  <li><a href="upload_insert.php">Datei hinzufügen</a></li>
  <li><a href="page.php">Seiten</a></li>
  <li><a href="page_add.php">Seite hinzufügen</a></li>
  <li><a href="navigation.php">Navigation</a></li>
  <li><a href="navigation_add.php">Navigation hinzufügen</a></li>
  <li><a href="gallery.php">Galerie Übersicht</a></li>
  <li><a href="gallery_add.php">Bild hinzufügen</a></li>
  <li><a href="gallery_category.php">Gallerie Ordner</a></li>
  <li><a href="counter.php">Counter</a></li>
  <li><a href="../logout.php">Logout</a></li>
</ul>

<div id="Inhalt">
  <h2>Administrationscenter</h2>
  <p>

also eigentlich müsste das doch schon reichen, oder?
 
Ich gehe jetzt mal start davon aus, dass entweder in der config.php oder in der ../login_check.php eine Session gestartet wird... also musst du die vor allen Ausgaben einbinden...
PHP:
<?php
    error_reporting(E_ALL);
include ("../login_check.php");
    include 'config.php';
    @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());
    mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());
?>
<html>
<head>
</head>
<?php
include "style/header_editor.tpl"; 
if(!isset($_POST['sub_post'])){
$row = mysql_fetch_assoc(mysql_query("SELECT head,data, id FROM page WHERE id = $_GET[id]"));
echo "<form method=\"POST\" action=\"$_SERVER[PHP_SELF]\">";
echo "<p><input type=\"text\" name=\"sort\" value=\"".$row['head']."\"/></p><br/><textarea name=\"data\" rows=\"10\" cols=\"50\" >".$row['data']."</textarea>";
?><html><br/><html><?php
echo "<input type=\"submit\" name=\"sub_post\">";
echo "<input type=\"hidden\" name=\"id\" value=\"".$row['id']."\">";
echo "</form>";
}
if(isset($_POST['sub_post'])){
mysql_query("UPDATE `page` SET `data` = '$_POST[data]' WHERE `id` = '$_POST[id]'");
mysql_query("UPDATE `page` SET `head` = '$_POST[head]' WHERE `id` = '$_POST[id]'");
echo " Ihre Anfrage konnte erfolgreich ausgeführt werden.";
}
?> 
</body>
</html>
 
Gewisse Sitzungseinstellungen erfordern dass der Antwort-Header verändert werden muss (etwa bei einem Sitzungs-Cookie). Wurde aber bereits etwas ausgegeben und damit Daten an den Client geschickt, ist das nicht mehr möglich, da die Header-Informationen noch vor den eigentlichen Nutzdaten geschickt werden. Daher sollte der Aufruf der session_start()-Funktion vor jeglicher Ausgabe stattfinden.
 
haloo GoldenEye, hi @ll

ich suche schon ne ganze weile die lösung wie ich mit dem tiny editor eine bestimmte html seite bearbeiten kann.

du hast in der navigation zugriffe auf diverse seiten wie z.b. auf page.php oder page_add.php eingebunden. könnte ich damit eine seite bsp. angebote.htm in den editor (nachdem der Login ausgeführt wurde) bearbeiten ?

wie baue ich so ein bearbeitungsseite für

angebote.html
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<table width="490" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <th width="312" height="30"><div align="left"><span class="titelText"><font color="#FF9900"> Wir suchen! </font></span></div></th>
  </tr>
  <tr valign="top" height=30>
    <td style='height:15pt'class="textContent"> F&uuml;r unsere Kundschaft suchen wir laufend Immobilien.
      Nachfolgend eine Auswahl unserer echten Interessenten.
      Haben Sie ein passendes Objekt zu verkaufen oder zu vermieten?
      Dann rufen Sie uns unverbindlich an und wir 
      pr&uuml;fen, ohne Verpflichtung f&uuml;r Sie und f&uuml;r uns,
      ob Ihre Liegenschaft den Bed&uuml;rfnissen unseres Kunden entspricht. </td>
  </tr>
  <tr valign="top" height=30>
    <td height=10><div id="box"></td>
  </tr>
  <tr valign="top" height=30>
    <td style='height:15pt' class="titelText"> Sanierungsbed&uuml;ftige Liegenschaft f&uuml;r Handwerker </td>
  </tr>
  <tr valign="top" style='height:30pt'>
    <td class="textContent" style='height:30pt'> gr&ouml;sse egal<br>
      Preis nicht &uuml;ber Fr. 500'000.-<br>
    </td>
  </tr>
  <tr valign="top" style='height:30pt'>
    <td class="textContent" style='height:15pt' align="right"> Code:1 </td>
  </tr>
  <tr valign="top" height=30>
    <td style='height:15pt' class="titelText"> g&uuml;nstige Eigentumswohnung </td>
  </tr>
  <tr valign="top" style='height:30pt'>
    <td class="textContent" style='height:30pt'> F&uuml;r diverse Kunden suchen wir laufend Wohnung im Raum Kreuzlingen um ca. Fr. 200'000.-. Gr&ouml;sse ab 2 Zimmer. Wohnung kann auch vermietet sein! <br>
    </td>
  </tr>
  <tr valign="top" style='height:30pt'>
    <td class="textContent" style='height:15pt' align="right"> Code:2 </td>
  </tr>
  <tr valign="top" height=30>
    <td style='height:15pt' class="titelText"> 4 - 5-Zimmerwohnung um Kaufen </td>
  </tr>
  <tr valign="top" style='height:30pt'>
    <td class="textContent" style='height:30pt'>&auml;lteres solventes Ehepaar sucht Wohnung f&uuml;r den 3. Lebensabschnitt<br>
      Zentrale Lage n&auml;he Einkauf und &ouml;ffentliche Verkehrsmittel. Nur mit Lift.<br>
    </td>
  </tr>
  <tr valign="top" style='height:30pt'>
    <td class="textContent" style='height:15pt' align="right"> Code:3 </td>
  </tr>
  <tr valign="top" height=30>
    <td style='height:15pt' class="titelText"> Bauland, auch unerschlossen oder nicht Baureif. </td>
  </tr>
  <tr valign="top" style='height:30pt'>
    <td class="textContent" style='height:30pt'> Lage egal, kann auch auf dem Land sein.<br>
      F&uuml;r Generalunternehmer, der ein Projekt realisieren will.<br>
      Rufen Sie uns unverbindlich an, damit wir es besprechen k&ouml;nnen.<br>
    </td>
  </tr>
  <tr valign="top" style='height:30pt'>
    <td class="textContent" style='height:15pt' align="right"> Code:4 </td>
  </tr>
</table>
 
</body>
</html>

Besten dank für deine/eure Hilfe

grüsse lindu
 

Neue Beiträge

Zurück