Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dodawanie textu do bazy ...
Forum PHP.pl > Forum > Bazy danych > MySQL
Jawor
W pliku dodajacym rozne dane do mojej bazy jest taka linia kodu ktora ma dodawac zawartosc strony ...

[sql:1:eba56dcd0e]$sql = "INSERT INTO pages VALUES ('', 'tutaj strona' )";[/sql:1:eba56dcd0e]

i jak jest tak jak teraz czyli wpisane tutaj strona to dobrze dodaje ten text do bazy i jest spox ....

lecz problem tkwi w tym ze ja potrzebuje dodac dluuuuzszy kod strony czyli ten forularz glosowania ...

[php:1:eba56dcd0e]<?php
if (!isset($_POST[glos])){
}else{
if (!isset($_COOKIE[glos])){
$baza = mysql_connect("localhost", "root", "") or die("Nie mogę połączyć z bazą !");
mysql_select_db("konkurs") or die("Nie mogę wybrać bazy !");
$query = "UPDATE glosy SET wartosc=wartosc+1 WHERE id=1";
$result = mysql_query ($query) or die("Błąd w zapytaniu do bazy !");
echo 'Twój głos został zaliczony!';
setcookie("glos","glos",time()+3600*24);
}else {
echo 'Nie możesz oddać dwóch głosów w tak krótkim czasie!';
};
};
?>
<form name="glosy" method="post">
<input type="hidden" name="glos" value="1">
<input type="submit" value="Głosuj">
</form>[/php:1:eba56dcd0e]

gdy go tam wkleje to jush tak dobrze nie jest bo zamiast dodac tego kodu do bazy pojawia sie cala biala strona ... czemu takiego dlugiego kodu niechce dodawac :?:
Ew. jak to obejsc ... :?:

Bardzo prosze o szybka odpowiedz ...
uboottd
1. malo informacji, sformuluj swoj problem precyzyjniej.
2. pokaz definicje tabeli
3. http://pl2.php.net/manual/en/function.mysq...cape-string.php
4. czy mysql zwraca jakis blad, jesli tak to jaki ?
Jawor
1.

Chodzi o to ze jak wywoluje ponizszy kod

Kod
$sql = "INSERT INTO pages VALUES ('', 'tutaj strona' )";


to do bazy mi dodaje: tutaj strona


tylko mi zalezy na texcie dluzszym niz tutaj strona !
ja chce dodac ponizszy kod ...

Kod
<?php

if (!isset($_POST[glos])){

}else{

if (!isset($_COOKIE[glos])){

$baza = mysql_connect("localhost", "root", "") or die("Nie mogę połączyć z bazą !");

mysql_select_db("konkurs") or die("Nie mogę wybrać bazy !");

$query = "UPDATE glosy SET wartosc=wartosc+1 WHERE id=1";

$result = mysql_query ($query) or die("Błąd w zapytaniu do bazy !");

echo 'Twój głos został zaliczony!';

setcookie("glos","glos",time()+3600*24);

}else {

echo 'Nie możesz oddać dwóch głosów w tak krótkim czasie!';

};

};

?>

<form name="glosy" method="post">

<input type="hidden" name="glos" value="1">

<input type="submit" value="Głosuj">

</form>


Próbuje to robiac tak samo jak z tekstem tutaj strona tylko zamiast tego wklejam ten dluuugi powyzszy kod !
Ale wtedy jush sie nie dzieje tak jak z dodaniem textu tutaj strona tylko mi pokazuje sie poprostu cxala biala strona ... !
Niewiem czemu :/ moze dlatego ze za dlugi jest ten kod strony ?
Jak ewentualnie to obejsc ...

2. Ten kod ma zoswtac dodany do tabeli pages ... a ta tabela sklada sie z id (automatycznie generowanego) i strona ... pod strona chce wlasnie aby byl umieszczany kod wygenerowanej strony ...

3.
questionmark.gif?

4.
Mysql nie pokazuje zadnego bledu ... poprostu wyskakuje cala biala strona ...

------------------------------

I teraz tak najprosciej jak sie da ...

$sql = "INSERT INTO pages VALUES ('', 'tutaj strona' )";

jak jest zapytanie tak jak wyzej to wszystko jest tak jach chce czyli text tutaj stronami dodaje do bazy ...

problem jest jak zamiast tutaj strona wkleje tam ten kod strony ... w tym przypadku jest tam scrypt glosowania ...



Myśle ze teraz jest dobrze wytlumaczone o co chodzi ...
Jawor
to co nie pomozecie sad.gif pliiiz naprawde potrzebuje tego ... bez tego ani rusz ...
scanner
A jak wyglada zapytanie z tym długim tekstem?
Jawor
No ja je robilem w ten sposob ... :

[php:1:77eaa78317]
$sql = "INSERT INTO pages VALUES ('', '<?php
if (!isset($_POST[glos])){
}else{
if (!isset($_COOKIE[glos])){
$baza = mysql_connect("localhost", "root", "") or die("Nie mogę połączyć z bazą !");
mysql_select_db("konkurs") or die("Nie mogę wybrać bazy !");
$query = "UPDATE glosy SET wartosc=wartosc+1 WHERE id=1";
$result = mysql_query ($query) or die("Błąd w zapytaniu do bazy !");
echo 'Twój głos został zaliczony!';
setcookie("glos","glos",time()+3600*24);
}else {
echo 'Nie możesz oddać dwóch głosów w tak krótkim czasie!';
};
};
?>
<form name="glosy" method="post">
<input type="hidden" name="glos" value="1">
<input type="submit" value="Głosuj">
</form>' )";
[/php:1:77eaa78317]
Jawor
Cytat


Sprobowalem z funkcja escape ale wyskakuje blad

Kod
Parse error: parse error, unexpected T_STRING in c:appservwwwkonkursmake.php on line 25


Co tu moze byc zle :

[php:1:88f0380154]<?php
$item = "$baza = mysql_connect("localhost", "root", "") or die("Nie mogę połączyć z bazą !");";
$escaped_item = mysql_escape_string($item);
$sql = "INSERT INTO pages VALUES ('', '$escaped_item' )";
?>[/php:1:88f0380154]
zalew
- zapisz ten kod w pliku osobnym
- zaladuj zawartosc pliku do zmiennej poprzez fpassthru() na przyklad.
- $zawartosc = addslashes($zawartosc);
- insert .... ('', '$zawartosc');

powinno pojsc
Jawor
Dobra jush sobie poradzilem i mi elegancko dodaje ten kod do bazy ...
Problem teraz tkwi w tym ze jak ponizszy kod jest wczytywany z bazy to kod html'a elegancko jest wykonywany lecz php nie wykonuje sie ...

Jak z tym obie poradzic ... ? Chce zeby kod php wczytany z bazy byl wykonywany na stronie ...

[php:1:e2cae118b7]
<?php
if (!isset($_POST[glos])){
}else{
if (!isset($_COOKIE[glos])){
$query = "UPDATE glosy SET wartosc=wartosc+1 WHERE id=1";
$result = mysql_query ($query) or die("Błąd w zapytaniu do bazy !");
echo "Twój głos został zaliczony!";
setcookie("glos","glos",time()+3600*24);
}else {
echo "Nie możesz oddać dwóch głosów w tak krótkim czasie!";
};
};?>
<form name="glosy" method="post">
<input type="hidden" name="glos" value="1">
<input type="submit" value="Głosuj">
</form>
[/php:1:e2cae118b7]
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.