Kezdőoldal » Számítástechnika » Programozás » Mi a hibám? (php)

Mi a hibám? (php)

Figyelt kérdés

Hellóó!

Feltettem már ezt a kérdést de azóta tovább jutottam :)

Most az a helyzet, hogy a mysql adatbázisba beírja a megfelelő adatokat, csak amikor rámegyek a "felvesz" gombra, akkor ezt az üzenetet kapom:


Warning: Cannot modify header information - headers already sent by (output started at C:\WEBDEV\websites\orszagok.php:1) in C:\WEBDEV\websites\orszagok.php on line 70


Ez a kódom:


<?php

ob_start();

$kapcsolat=mysql_connect("localhost","root","root");

mysql_select_db("feladat",$kapcsolat);



if(!isset($_POST["mitcsinal"])) {

?>


<HTML>

<BODY>


<p align="center">


<font size="5" color="lightblue"><b>Országok</b></font>

<br /><br />


<FORM action="<?php print $_SERVER["PHP_SELF"] ?>" method="POST">


<input type="hidden" name="mitcsinal" value="felvesz">

<p align="center"><b>Kód</b> <input type="text" name="kod" size="3" >

   

<b>Ország neve:<b><input type="text" name="nev" size="20">

   

<input type="submit" value="Felvesz!">


<br><br>


<select style="font-family:courier new">

<?php

$sql = "SELECT * FROM orszagok ORDER BY nev";

$orszaglista = mysql_query($sql);

while($egyorszag = mysql_fetch_array($orszaglista)) {


$nev_hossz = strlen($egyorszag["nev"]);

$kod = strlen($egyorszag["kod"]);


$szokoz = 25-$nev_hossz-$kodhossz;


?>

<option><?php print $egyorszag["nev"]?>

<?php


for($i=1; $i<= $szokoz; $i++){

print " ";

}

print $egyorszag["kod"];

?>

</option>

<?php

}

?>

</select>

</FORM>

</p>



</BODY>

</HTML>


<?php


}


elseif ($_POST["mitcsinal"]=="felvesz") {


$sql="INSERT INTO orszagok (kod,nev) VALUES ($_POST[kod],'$_POST[nev]')";

mysql_query($sql);


header("location:orszagok.php");

}

mysql_close($kapcsolat);


ob_end_flush();

?>


Érdekes, hogy az ob_start() és az ob_end_flush függvény ott van a kódban és mégis a hiba arra utal, mintha nem lenne ott. Kérlek segítsetek ez ügyben : )



2013. aug. 8. 13:13
 1/5 anonim válasza:
BOM?
2013. aug. 8. 13:55
Hasznos számodra ez a válasz?
 2/5 A kérdező kommentje:

Éééés IGEEEN!! Kösziii. Nagyon sokat segítettél!

Figyelj most az a baj, hogy amikor megnyitom a böngészőben az oldalt akkor ilyen idióta karakterek vannak az ékezetes betűnél. Ezt, hogy korrigáljam?

Amúgy eddig utf8 kódolás volt. Most utf 8 BOM nélkül.

Lényegében ez BOM mit takar?

2013. aug. 8. 13:57
 3/5 anonim ***** válasza:

A BOM tudtommal egyfajta jelölés a böngészőnek (vagy a fájlt megnyitó programnak), hogy a fájl tartalma UTF-8 lesz.


Ezt úgy tudod helyettesíteni HTML-ben, hogy egy META tag-ben megadod, hogy UTF-8 kódolású a fájlod.


<head>

<meta http-equiv="content-type" content="text/html; charset=utf-8">

</head>

2013. aug. 8. 15:23
Hasznos számodra ez a válasz?
 4/5 anonim ***** válasza:

[link]


Abba most ne menjünk bele, hogy nem szabadna így kinéznie a kódnak.


A böngésződ helyesen ismeri fel a karakterkészletet?

Nincs az elküldött headerrel átverve?

Ha játszogatsz egy picit a böngésző kódolási beállításaival, akkor ez viszonylag gyorsan kiderül.

Úgyszintén: a szövegszerkesztődben milyen karakterkészlet van beállítva? Az sem mindegy, méghozzá nagyon nem. Azt is be kell állítani UTF-8 -ra.

2013. aug. 8. 15:25
Hasznos számodra ez a válasz?
 5/5 anonim válasza:

Nincsmit.

Előttem a nagyját leírták, de gugli a barátod.

[link]

2013. aug. 8. 15:44
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!