Gå til innhold

[Løst]PHP problemer, plz hjelp


Anbefalte innlegg

jeg trenger litt hjelp til en litt vanskelig greier.

 

Jeg har skrevet et script som viser alle filene, i en mappe, og legger dem inn i en tabell, (fungerer som en drøm), men så vil jeg og hente informasjon fra en textfil som har beskrivelse, (slik at man får opp en celle med navnet og cellen ved siden av har beskrivelsen av 'linken'/fila), det jeg trenger hjelp til er å inarbeide informasjonen fra en txt fil som ligger i hvert av 'directories'-ene,

 

 

jeg hadde vært svært takknemmelig for all hjelp.

 

-frank

 

 

Coden jeg har skrevet: (se etter '-----------' som er stedet jeg vil fylle inn texten fra txt filene)

<?php
if ($_POST['submit'])
{
copy($_FILES['file']['tmp_name'], $_FILES['file']['name']);
}
?>
<html>
<head>

<title>###########.com portal page</title>
<style type="text/css">
a:link
{	  color:#0000AA;}

a:visited
{	  color:#0000AA;}

a:active
{	  color:#0000AA;}

body
{	  font-family: Verdana, Arial, Helvetica;}

body
{	  background:#BBBBBB} 

h1
{	font-family: Times new roman;}

h2, h3, h4, h5, h6
{	  font-family: Comic sans ms, Arial, Helvetica;}

h1
{	  color:rgb(000,000,000);}

h2
{	  color:rgb(000,000,000);}
</style>
</head>
<body>

<center>
<table border="1">
<tr>
	<td colspan="2">
		<h2><U>Select a subdir:</U></h2>
	</td>
</tr>
<!--the following PHP snippet set up the table with the contents of the origianl directory-->
<?php
$dir=opendir(".");
$files=array();
while (($file=readdir($dir)) !== false)
{
if ($file != "." and $file != ".." and $file != "index.php" and $file != "count.txt" and $file != "phpsitemap" and $file != "wiki" and $file != "sitemap.xml" and $file != "sitemap.txt")
{
array_push($files, $file);
}
}

closedir($dir);
sort($files);

foreach ($files as $file)
print "<tr>
	<td>
		<h4><A href='$file'>$file</a><br/></h4>
	</td>
	<td>
		<p>$theData0</p> ------------------------------------------HJELP MEG HER!!!!
	</td>
</tr>";
?>	
</table>
<!--the following PHP snippet adds 1 unit to a counter file-->
<?php

$file = "wiki/count.txt";

if (file_exists($file)) {
$fp = fopen("$file", "r+");
flock($fp, 1);
$count = fgets($fp, 4096);
$count += 1; 
fseek($fp,0);
fputs($fp, $count);
flock($fp, 3);
fclose($fp);
} else {
echo "Can't find file, check '\$file'<BR>";
}

?>
<p>
Numer of visitors: 
<!--the following PHP snippet displays det counter data-->
<?php
$myFile = "wiki/count.txt";
$fh = fopen($myFile, 'r');
$theData = fread($fh, 5);
fclose($fh);
echo $theData;
?>
</p>
<p>
<a href="learningphp/learning_php/index.php">specialPHP</a>
</p>
</center>
</body>
</html>

Lenke til kommentar
Videoannonse
Annonse

Tja, du kan prøve å bytte ut dette:

foreach ($files as $file)
print "<tr>
	<td>
		<h4><A href='$file'>$file</a><br/></h4>
	</td>
	<td>
		<p>$theData0</p> ------------------------------------------HJELP MEG HER!!!!
	</td>
</tr>";

med dette:

foreach ($files as $file) {
$filesize = filesize($file);
$length = $filesize > 100 ? 100 : $filesize;
$innhold = is_file($file) ? file_get_contents($file, FILE_TEXT, NULL, 0, $length) : '';
print "<tr>
		<td>
			<h4><A href='$file'>$file</a><br/></h4>
		</td>
		<td>
			<p>$innhold</p>
		</td>
	</tr>";
}

Endret av Edorph
Lenke til kommentar

Hmm, misforsto jeg? Det var kanskje ikke innholdet i filene du ville ha i kolonne 2, men en beskrivelse som er hentet fra en annen fil?

 

I så fall kan du prøve noe á la dette.. først lager du fila som inneholder beskrivelsene av de andre filene (forutsatt at det er dette du vil fram til, altså :-)) som ser slik ut

navnpaafil1.txt = "Dette er en tøff fil."
navnpaafil2.txt = "Dette er en mindre tøff fil."

 

Kall den f.eks. beskrivelser.txt. Så endrer du koden din til noe slik:

 

<?php
$dir=opendir(".");
$files=array();
$beskrivelser = parse_ini_file('beskrivelser.txt');
while (($file=readdir($dir)) !== false)
{
if ($file != "." and $file != ".." and $file != "index.php" and $file != "count.txt" and $file != "phpsitemap" and $file != "wiki" and $file != "sitemap.xml" and $file != "sitemap.txt" and $file != 'beskrivelser.txt')
{
	array_push($files, $file);
}
}

closedir($dir);
sort($files);

foreach ($files as $file){
$beskrivelse = $beskrivelser[$file];
if($beskrivelse == null) $beskrivelse = 'Ingen beskrivelse';
print "<tr>
	<td>
		<h4><A href='$file'>$file</a><br/></h4>
	</td>
	<td>
		<p>$beskrivelse</p>
	</td>
</tr>";
}
?>

Endret av Edorph
Lenke til kommentar
Hmm, misforsto jeg? Det var kanskje ikke innholdet i filene du ville ha i kolonne 2, men en beskrivelse som er hentet fra en annen fil?

 

I så fall kan du prøve noe á la dette.. først lager du fila som inneholder beskrivelsene av de andre filene (forutsatt at det er dette du vil fram til, altså :-)) som ser slik ut

navnpaafil1.txt = "Dette er en tøff fil."
navnpaafil2.txt = "Dette er en mindre tøff fil."

 

Kall den f.eks. beskrivelser.txt. Så endrer du koden din til noe slik:

 

......

 

jeg er forferdelig til å sette ord på ideene mine:P... jeg tror du misforstod... det jeg ønsker at scripptet skal gjøre er å laste inn navnene på alle mappene i mappen som denne PHP-filen ligger i, og så skal den for hver eneste mappe den finner hente en beskrivelse som ligger i mappen nettopp funnet. deretter skal den plassere i en tabell navnet på mappen, og i kolonnen ved siden av skal den skal beskrivelse som ligger i textfilen stå. og selvsagt skal dette være en loop, jeg får bare ikke til å bake inn den delen med beskrivelse... grrrr!!!

 

men takk for forsøket ditt, men det fungerte ikke helt slik jeg ønsker det...

 

-frank

Lenke til kommentar

Okay, prøver igjen :-) I hver mappe ligger det altså en fil som inneholder beskrivelsen av den mappen. Antar at den heter beskrivelse.txt.

 

<?php
$dir=opendir(".");
$files=array();
while (($file=readdir($dir)) !== false)
{
if ($file != "." and $file != ".." and $file != "index.php" and $file != "count.txt" and $file != "phpsitemap" and $file != "wiki" and $file != "sitemap.xml" and $file != "sitemap.txt")
{
	array_push($files, $file);
}
}

closedir($dir);
sort($files);

foreach ($files as $file){

$beskrivelse = '';
// Hvis denne filen er en mappe, hent beskrivelse fra tekstfil inni den mappen
if(is_dir($file)) $beskrivelse = file_get_contents($file . '/beskrivelse.txt');

print "<tr>
	<td>
		<h4><A href='$file'>$file</a><br/></h4>
	</td>
	<td>
		<p>$beskrivelse</p>
	</td>
</tr>";
}
?>

Endret av Edorph
Lenke til kommentar
Okay, prøver igjen :-) I hver mappe ligger det altså en fil som inneholder beskrivelsen av den mappen. Antar at den heter beskrivelse.txt.

 

<?php
$dir=opendir(".");
$files=array();
while (($file=readdir($dir)) !== false)
{
if ($file != "." and $file != ".." and $file != "index.php" and $file != "count.txt" and $file != "phpsitemap" and $file != "wiki" and $file != "sitemap.xml" and $file != "sitemap.txt")
{
	array_push($files, $file);
}
}

closedir($dir);
sort($files);

foreach ($files as $file){

$beskrivelse = '';
// Hvis denne filen er en mappe, hent beskrivelse fra tekstfil inni den mappen
if(is_dir($file)) $beskrivelse = file_get_contents($file . '/beskrivelse.txt');

print "<tr>
	<td>
		<h4><A href='$file'>$file</a><br/></h4>
	</td>
	<td>
		<p>$beskrivelse</p>
	</td>
</tr>";
}
?>

 

Hey, det virket som bare det:)... trenger litt finpussing, men ellers så er det perfekt... takk for hjelpen:)!!!!

 

-frank

Lenke til kommentar

Emnetittelen i denne tråden er lite beskrivende for trådens innhold og det er derfor ingen god emnetittel. Jo bedre og mer beskrivende emnetittelen er, jo lettere er det for andre å skjønne trådens innhold og det vil være lettere å treffe den riktige forumbrukeren med det rette svaret. Ber deg derfor om å endre emnetittel. Vennligst forsøk å ha dette i tankene neste gang du starter en tråd, og orienter deg om hva vår nettikette sier om dårlig bruk av emnetitler.

 

Husk at en god emnetittel skal beskrive eller oppsummere hvilket problem du har - ikke at du har et problem. En god emnetittel skal heller ikke kun bestå av et produktnavn.

 

Bruk p_edit.gif-knappen i første post for å endre emnetittelen.

 

(Dette innlegget vil bli fjernet ved endring av emnetittel. Ikke kommenter dette innlegget, men p_report.gif gjerne dette innlegget når tittelen er endret, så vil det bli fjernet..)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...