Trådstart 17 jan. 2004 00:11 #1 Får detta felmeddelande i en linkadder.
Felmess i index.php
Warning: Cannot modify header information - headers already sent by (output started at /home/swedem2/public_html/member/link/index.php:2) in /home/swedem2/public_html/member/link/index.php on line 8
Index.php kod till och med rad 10.
<body background="bg.jpg" link="ffff00" alink="ff0000" vlink="ffff00">
<?
include("data.php");
$conn = mysql_connect("$dbhost", "$dbuser", "$dbpass");
if ($_GET['add'] == "true") {
mysql_db_query($databas, "INSERT links (name, url, klicks) VALUES ('".$_POST['name']."', '".$_POST['url']."', '0')") or exit(mysql_error());
header("Location: index.php");
}
?>
Ser ej vad problemet kan vara,
Qimen Medlem sedan juni 2001 5 009 inlägg Du får inte skicka ngn data till webbläsaren före header. Så för att lösa ditt fel får du lägga koden överst på sidan.
Okey, testade lite olika varianter men fick samma felmess. nån som kanske kan placera om koderna?
Hela index.php
<body background="bg.jpg" link="ffff00" alink="ff0000" vlink="ffff00">
<?
include("data.php");
$conn = mysql_connect("$dbhost", "$dbuser", "$dbpass");
if ($_GET['add'] == "true") {
mysql_db_query($databas, "INSERT links (name, url, klicks) VALUES ('".$_POST['name']."', '".$_POST['url']."', '0')") or exit(mysql_error());
header("Location: index.php");
}
?>
<link rel="stylesheet" href="style.css" type="text/css">
<?
if ($_GET['add'] == "yes") {
?>
<script>
function submitonce(theform){
if (document.all||document.getElementById){
for (i=0;i<theform.length;i++){
var tempobj=theform.elements[i]
if(tempobj.type.toLowerCase()=="submit"||tempobj.type.toLowerCase()=="reset")
tempobj.disabled=true
}
}
}
</script><body bacbground="bg.jpg" link="ffff00" alink="ff0000" vlink="ffff00">
<font face="Verdana, Helvetica, sans-serif" size="1" color="ffffff">
<form action="index.php?add=true" method="post" onSubmit="submitonce(this)"><body bgcolor="#06517D" link="ffff00" alink="ff0000" vlink="ffff00">
<b>Site Name:</B><br>
<input type="text" name="name" cols="30"><br>
<b>Site URL:</B><br>
<input type="text" name="url" cols="30" value="http://"><br>
<br>
<input type="submit" value="Add">
</form>
<?
} else {
?>
<a href="index.php?add=yes">Lägg till - Add a link</a><br><br>
<?
$get = mysql_db_query($databas, "SELECT * FROM links ORDER BY id DESC LIMIT 10");
while ($r = mysql_fetch_array($get)) {
print $r["klicks"];
print " | <a href='out.php?id=";
print $r["id"];
print "' target='_BLANK'>";
print $r["name"];
print "</a><br>";
}
}
?>
Qimen Medlem sedan juni 2001 5 009 inlägg Om det är hela index.php så fattas du lite kod ju. Du ska ju ha med <html> osv. också
Det du får göra är att lägga phpkoden ovanför body (egentligeh <html>).
<?
include("data.php");
$conn = mysql_connect("$dbhost", "$dbuser", "$dbpass");
if ($_GET['add'] == "true") {
mysql_db_query($databas, "INSERT links (name, url, klicks) VALUES ('".$_POST['name']."', '".$_POST['url']."', '0')") or exit(mysql_error());
header("Location: index.php");
}
?>
<body background="bg.jpg" link="ffff00" alink="ff0000" vlink="ffff00">
<link rel="stylesheet" href="style.css" type="text/css">
<?
if ($_GET['add'] == "yes") {
?>
<script>
function submitonce(theform){
if (document.all||document.getElementById){
for (i=0;i<theform.length;i++){
var tempobj=theform.elements[i]
if(tempobj.type.toLowerCase()=="submit"||tempobj.type.toLowerCase()=="reset")
tempobj.disabled=true
}
}
}
</script><body bacbground="bg.jpg" link="ffff00" alink="ff0000" vlink="ffff00">
<font face="Verdana, Helvetica, sans-serif" size="1" color="ffffff">
<form action="index.php?add=true" method="post" onSubmit="submitonce(this)"><body bgcolor="#06517D" link="ffff00" alink="ff0000" vlink="ffff00">
<b>Site Name:</B><br>
<input type="text" name="name" cols="30"><br>
<b>Site URL:</B><br>
<input type="text" name="url" cols="30" value="http://"><br>
<br>
<input type="submit" value="Add">
</form>
<?
} else {
?>
<a href="index.php?add=yes">Lägg till - Add a link</a><br><br>
<?
$get = mysql_db_query($databas, "SELECT * FROM links ORDER BY id DESC LIMIT 10");
while ($r = mysql_fetch_array($get)) {
print $r["klicks"];
print " | <a href='out.php?id=";
print $r["id"];
print "' target='_BLANK'>";
print $r["name"];
print "</a><br>";
}
}
?>
Får iaf detta felmess *gråter*
Warning: Cannot modify header information - headers already sent by (output started at /home/swedem2/public_html/member/link/data.php:8) in /home/swedem2/public_html/member/link/index.php on line 7
Peeer Medlem sedan mars 2002 5 907 inlägg Att lägga ob_start(); överst i din kod borde hjälpa.
Du skriver ut någon form av data i data.php på rad 8.
Matte Medlem sedan aug. 2000 2 975 inlägg Då även mellanslag, radbrytningar och liknande utanför PHP-taggen ger output, kan det vara det som spökar i din data.php.
Om du nu inte har någon HTML-kod är, eller echo eller print, kolla att där inte finns några osynliga tecken före eller efter PHP-taggarna.
Den före är lätt att se, men efter kanske du behöver sätta markören direkt efter ?> och trycka upprepade gånger på DELETE tills du är säker på att där inte finns något.
Är det bara data du har för uppkopplingen till MySQL i den filen, ska du inte behöva köra ob_start().
Tack grabb, löste det. Det var ett mellanslag efter php koden i data.php...
Men, nu får jag den ej att scrolla.... dvs den ligger i denna iframe:
<IFRAME SRC="link/index.php" WIDTH="200" HEIGHT="210" NAME="add" FRAMEBORDER="NO"></P>
</IFRAME>
men den vill icke scrolla ner så man kan se alla länkar....
Matte Medlem sedan aug. 2000 2 975 inlägg Titta gärna över din HTML-kod lite.
Du har inga <html> eller <head>, men däremot har du tre stycken <body>
Har du något i din CSS-fil som säger att den inte ska scrollas ?