Zdravim vsechny prosim muzete mi poradit stimto...pri vstupu na stranky mi to hlasi tuto chybu:
Warning: mysql_connect() [function.mysql-connect]: Access denied for user: 'panok@nike.webzdarma.superhosting.cz' (Using password: YES) in /3w/webzdarma.cz/p/panok/index.php on line 141
Access denied for user: 'panok@nike.webzdarma.superhosting.cz' (Using password: YES)
nejsem zrovna fanda do php takze ztoho nevim hlavu ani patu...
zkousel jsem projit index.php ale nic jsem ztoho nezjistil..diky za kazdou radu
Pravděpodobně špatné přihlašovací údaje, nebo ani nemáš aktivovanou db.
PS: gratuluji k inteligentnímu názvu dotazu.
zbi: Nebuď ironický. Správně by mělo být:
PS: gratuluji k debilnímu názvu dotazu.
petr (panok.webzdarma.cz)
predmet - viz ostatni, zakladni skola, jak psat dopisy
sql pripojeni viz ZBI
Bud mas chybne vyplnene udaje, viz menu Administrace - Nastaveni - MySQL pripojeni.
Nebo ani nevis, ze se databaze aktivuje zvlast po zalozeni uctu, stejne menu.
A pred dalsim dotazem nakoukni na menu PODPORA, kde jsou vypsany bezne chybky a problemy.
Ku prikladu ja tam mam:
Server mysql.webzdarma.cz
Databáze petermlich
Přístupové jméno: petermlich
Přístupové heslo: mojetajneheslo
v config.php to byva obvykle
$database_server = "mysql.webzdarma.cz"; //radek server
$database_user = "petermlich"; //radek jmeno
$database_password = "mojetajneheslo" //radek heslo
$database_name = "petermlich"; //radek databaze
Nemůžete mi někdo prosím poradit? Mám problém že když vkládám text do DB přes textarea (formuláře) tak mě to funguje jen do té doby, než text nepřekročí cca 30 řádků, přičemž proměná v tabulce do ktereré se mi to ukládá je typu longtext což by mělo v pohodě pojmout daleko více.
Nevíte čím by to mohlo být, podezřívám ten textarea, není to nějak tam omezeno?
Další, který předpokládá nadpřirozené schopnosti zdejších uživatelů... Do php ti ostatní nevidí a ten formulář je někde u tebe na stránkách? Žeby ses sám koukl k sobě do zdrojáku? :-)
=Pavel=
Mas to tak, jak si to nastavis..
Pokud sem nenapises, co tam presne mas, nebude ti nikdo schopny adekvatne poradit ;)
<form action="soubory/obsah/php/muziaproved.php">
<b>Obsah:</b>  Zde nůžete doplňovat výsledky vkládat rozpisy a obsah do sekce muži A
<textarea type=text name="obsah" cols="120" rows="24">
</textarea>
<input type=submit value="Odesli">
</form>
v tom souboru muziaproved.php je upravení tabulky s id=1 která již existuje
$vysledek2=MySql_Query("UPDATE zdrojaky SET obsah = ('$obsah') where id=1"); + ty sračky okolo
říkám, nefunguje to pouze když vkládám více jak cca 30 řádků.
'+ ty sračky okolo'
A ty nas zajimaji uplne nejvic :)
Samozrejme s tim, co jsi napsal je problem o neco vic jasnejsi. A to tak, ze tam problem neni.
Takze nas dal zajima struktura databaze a vsechno, co ma vliv na promennou $obsah;
Resp. takto:
function sq($query,$text='') {global $SQL; $SQL['dotazy']+=1; $res = mysql_query($query) or die("<hr>MySQL Err".$text.": $query<hr>".mysql_error()); return $res;} //debug mode
$query = "UPDATE zdrojaky SET obsah = ('$obsah') where id=1";
echo '<pre>'.$query.'</pre>';
$vysledek2=sq($query,'Nastala chyba v sql dotazu');
radek echo '<pre>'.$query.'</pre>';
ti vypise uplny SQL dotaz. A ted je otazka, zda tam mas vsech 200 radku nebo jen 30. Pokud 30, problem spada do PHP, SQL pouze vykona, co dostane.
Ted, co dal?
problem je v SQL? je treba vedet strukturu te tabulky (phpmyadmin, export - tabulka - pouze sturkturu - na obrazovku -> do fora). Predpokladam, ze bys tam mel mit pole typu VARCHAR omezene treba na 50 znaku. Pak ti to vice neulozi.
NEE, problem je v PHP. Mas tam nejaky script, ktery upravuje promennou $obsah a odpocitava 30 radku, znak "\n".
NEE-E, problem muze byt v HTML, odesilani metodou GET je omezene na 1000 znaku, adresni radek, staci zmenit na POST a upravit podle toho pak i PHP.
Kdybys dal hnedka vsechno dulezite, stacilo odpovedet jednou vetou.
Kdyby sis vypisoval vsechny promenne, ktere maji vliv na $obsah, mohl jsi problem vyresit sam.
=Pavel=
To ve formulari opravdu nemas uvedenu metodu odesilani dat? Pokud pouzivas GET, je tvuj problem objeven - podle puvodnich planu mohla byt url dlouha maximalne 256 znaku, dnes vsak vetsina prohlizecu i serveru ale zpracovava url nekde do 1k znaků.
> $vysledek2=MySql_Query("UPDATE zdrojaky SET obsah = ('$obsah') where id=1");
Proc mas kolem $obsah ty zavorky? To sice nebude zpusobovat tvuj problem, ale imho tam nemaji co delat..
Jinak vzhledem k pouziti nazvu promenne $obsah stejne jako v html formulari mas name="obsah" to vypada, ze pouzivas automaticky prepis $_GET a $_POST promennych (ted si nezpomenu jak se to oficialne jmenuje), ale doporucuji na to zapomenout a pouzivat regulerni pristup pres $_GET a $_POST pole..
A zaverem.. vsechny atributy html tagu maji mit sve hodnoty v uvozovkach - pr: type="submit", type="text" ..
Tohle je celý co tam mám i s těma věcma okolo
<?
echo "id: ",$id,"<br>";
echo "Obsah: ",$obsah,"<br>";
$spojeni=MySQL_Connect("mysql.webzdarma.cz","jmeno","heslo");
if (!$spojeni): {echo "Nepodarilo se pripojit";
break;}
endif;
Mysql_Select_DB("jmeno");
$vysledek2=MySql_Query("UPDATE zdrojaky SET obsah = ('$obsah') where id=5");
if (!$vysledek2) echo "Neproběhlo";
echo "<br><a href='../../../skujezd.htm'>Zde se vrátíte na stránky, vložení článku může někdy trvat i několik vteřin</a>";
?>
A tady je struktůra tabulky
Sloupec Typ Porovnávání Vlastnosti Nulový Výchozí
id tinyint(4) Ano NULL
obsah longtext latin2_czech_cs Ano NULL
stačí to tak?
Ale GET tam nikde nemám, takže nevím kde je problém
Má to být takto:
<form action="soubory/obsah/php/muziaproved.php" method="post">
<textarea ...
...
</form>
=Pavel=
Tys tam nemel nemit GET, ale mel mit(!) POST.
A mimochodem, ve tvem php skriptu bych ti navrhl par zmen:
1) $obsah nahradit $_POST['obsah']
2) nepouzivat short_tags - nahradit <? klasickym <?php
A mimochodem, php podporuje spojovani retezcu carkami? (podle prvnich 2 radku tveho php skriptu)
->Kit a Freeze: Moc děkuju bylo to ono, taková blbost přitom bych na to asi fakt sám nedošel.