Chcialem zrobic mozliwosc edytowania menu. Problem pojawia sie gdy chce dodac nowy link do bazy, mianowicie na stronie ktora laczy sie z baza i dodaje wpis pojawia sie blad z wyswietlaniem menu. Problem wystepuje tylko na tej stronie - gdy przejdzie sie na inna wszystko jest w porzadku. Blad jest taki ze podaje mi pierwsze litery z nazwy i url do strony, wiec zamiast
pokazuje sie '
Rowniez wpis do bazy ktory jest jednoczesnie tworzony jest bledny. Przekreca pierwsza litere z kazdego pola. Zamiast
Kod
Ksiega gosci
tworzy
Kod
asiega gosci
i zamiast
Kod
index.php?action=guestbook
wstawia
Kod
andex.php?action=guestbook
Nie wiem, moze wina wynika z bledu apache. Testowalem narazie tylko u siebie (korzystam z WebServa).
Kod wyswietlania menu: (w pliku cfg.txt zapisane sa zmienne dotyczace hosta, loginu, hasla i nazwy bazy mysql)
<?php include('cfg.txt'); $sql2 = 'SELECT * FROM `menu` ORDER BY `id` ASC LIMIT 0, 30 '; $menulicz=0; { $menuid[$menulicz]=$wiersz[0]; $menuname[$menulicz]=$wiersz[1]; $menuurl[$menulicz]=$wiersz[2]; $menutarget[$menulicz]=$wiersz[3]; if($menutarget[$menulicz]=1) { $menutarget[$menulicz]=''; } if($menutarget[$menulicz]=0) { $menutarget[$menulicz]=' target="_blank"'; } $href[0] = '--> <a href="'; $href[1] = $menuurl[$menulicz]; $href[2] = '"'; $href[3] = $menutarget[$menulicz]; $href[4] = '>'; $href[5] = $menuname[$menulicz]; $href[6] = '</a><BR>'; } ?>
Dodawanie wpisu do bazy:
<?php $sql3 = 'SELECT `id` FROM `menu` ORDER BY `id` DESC LIMIT 0, 1 '; { $ilosclinkow=$wiersz[0]; } $ilosclinkow++; $sql3 = 'INSERT INTO `menu` (`id`, `name`, `url`, `target`) VALUES (''. $ilosclinkow .'', ''. $menuname .'', ''. $menuurl .'', ''. $menutarget .'');'; $sql3 = 'INSERT INTO `menu` (`id`, `name`, `url`, `target`) VALUES (''. $ilosclinkow .'', ''. $menuname .'', ''. $menuurl .'', ''. $menutarget .'');'; ?>
Tekst skopiowalem ze srodka sformatowanego skryptu strony wiec jest duzo spacji.
Za ewentualna niewiedze ze stosowania podstawowych funkcji przepraszam i obiecuje sie poprawic
