Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Ongelmana linkkilista kategorioituna

lahtis [12.06.2004 22:27:01]

#

Mikä tässä saattaisi mättää kun taa lukee vain ekan kategorian, eikä tulosta niitä muita.
vai onko tuossa kategorioiden haussa jotain mätää??

(tuo linkit tiedostosta 0.txt vaikka pitäsi tuoda 0.txt, 1.txt, 2.txt...)

<?php
// Frame, johon avataan osoite, nimi ("_blank"=uusi ikkuna, "_top"=koko ikkuna)
$openin = "_blank";

// Linkkilistan aloittava koodi
$code['start'] = "
 <table cellpadding=0 cellspacing=0 border=0 width=50%  bgcolor=\"#000000\"><tr><td>
 <table cellpadding=0 cellspacing=1 border=0 width=100% bgcolor=\"#000000\">
";

// Linkkilistan lopettava koodi
$code['end'] = "
 </table>
 </td></tr></table>
";

// Linkkilistan jokaista linkkiä edeltävä koodi
$code['entry1'] = "
 <tr><td bgcolor=\"#fff1c1\">
";

// Linkkilistan jokaista linkkiä lopettava koodi
$code['entry2'] = "
 </td></tr>
";


// haetaan katogoriat filestä
echo $code['start'];
$file = file("data/kategoriat.txt");
$count = count($file);
for($u=0; $u<$count; $u++) {
  $entry = explode("|", $file[$u]);

// tulostetaan kategoriat
     	   echo $code['entry1'];
           echo"<center>$entry[1]</center>";
	   echo $code['entry2'];
	   echo $code['end'];


// haetaan tiedot db:stä
  echo $code['start'];
  $file = "data/$u.txt";
 $data = file($file);
$entry = explode("|", $data[$u]);

// Tulostetaan kategorioiden linkit ja kuvaukset
echo $code['entry1'];
echo"<a href=\"$entry[6]\" target=\"$openin\">$entry[5]</a><br/>";
echo"Kuvaus: $entry[7]";
echo $code['entry2'];
echo $code['end'];

}

?>

no sitten toinen ongelma
miten saa ton emdeb tohon popup:piin. Mikähän täsä mättää.

echo "<a href=# onclick=\"window.open('<embed src=\"$musicdb".$entry['url']." border=6 hspace=12 vspace=12 width=282 height=50 autostart=false></embed>', '_Addmusic', 'HEIGHT=500,resizable=yes,scrollbars=no,WIDTH=360');return false;\" target=\"_Addmusic\">Popup</a>";

Antti Laaksonen [14.06.2004 01:21:28]

#

Olisiko vika siinä, että ensin luet kategoriatiedoston rivit $file-muuttujaan, mutta sitten for-silmukan sisällä laitat tiedoston nimen samaan muuttujaan. Siksi skripti ei löytäne tietoja silmukan muilla kierroksilla. Toinen virhe saattaa olla siinä, että käytät $data-taulukon indeksinä $u-muuttujaa. Tämä tarkoittaisi sitä, että tiedostosta luettaisiin aina niin mones rivi, kuin kategorian nimi on tiedostossa.

Tällaisia ongelmia kannattaa ratkoa tulostamalla sopivissa kohdissa muuttujien arvoja sivulle. Silloin näkee heti, missä vaiheessa homma menee pieleen. Ja kun seuraavan kerran lähetät koodia, kirjoita se kooditagien sisään.

lahtis [14.06.2004 03:43:07]

#

Kiitos hyvistä neuvoista. Yritetään tässä opetella. Joo unohdin nuo kooditagit, ei ole tullut pitkään aikaan kirjoitettua tänne mitään. Ei kaikkea aina muista.

NiKC [14.06.2004 08:11:37]

#

Tuo embeddaus popupiin onnistuu mutta ei ihan noin. Jos katsot window.open()-metodin speksejä niin ensimmäinen parametri on urli.

Yksi tapa on tehdä tuo embed koodi valmiiksi esim. php-tiedostoon, ja avata ikkuna näin:

var akkuna = null;

function openEmdeb(musicdb, entry)
{
   url = "embed.php?musicdb=" + musicdb + "&entry=" + entry;
   akkuna = window.open(url, "embedikkuna");
}

Toinen tapa on avata tuo ikkuna näin:

var akkuna = null;

function openEmdeb()
{
   akkuna = window.open("", "embedikkuna");
   akkuna.document.write("<embed>...")
}

Lienee enemmälti makuasia miten homman tekee, mutta tuolla php-ratkaisulla voi suorittaa samalla virheentarkistuksia että parametrit varmasti ovat oikeanlaisia.

http://devedge.netscape.com/central/javascript/

lahtis [14.06.2004 21:02:24]

#

Sain korjattua. tuon linkit ongelman.
Tuolta saa jos joku sen haluaa. http://koti.mbnet.fi/lahtis/index.php?mod­=project

mutta tuo popup ikkuna ja embed tuntuu kylläkin niin vaikealta.
ei oikein tota tajua.

musa.php

<?PHP

// lisätään musiikit sivulle
echo $code['start'];
		$handle = unserialize(implode('', file("admin/data/upmusic/music.php")));
		$handle = array_reverse($handle);
		foreach ($handle as $entry) {
			echo $code['entry1'];

	// tähän kohtaan pitäsisi saada popup.
      // kuinka saan nuo tiedot siis ton urlin liitettyä popup-akkunaa.


// tää aukaisee uudensivun, mutta tätä en haluasi.
// echo "<a href=\"".$entry['url']."\" target=\"$openin\">".$entry['title']."</a>";

//jatketaan, jos tiedosto on olemassa

if (file_exists($entry['url'])) {
 		  //luetaan tiedoston koko ja muokkausaika muuttujiin
   		$koko = filesize($entry['url']);
   		$koko = round(($koko/1024/1024),1);}
			echo " $koko mt.<br/>";
			echo "Kokoonpano: ";
			echo $entry['group'];
			echo $code['entry2'];
		}
echo $code['end'];
?>

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta