Bestandsnaam scheiden
ik heb bestandsnamen die wel aardig lang zijn, en die bestaan uit verschillende onderdelen en die gescheiden worden door "_" tekens.
Maar dit is onoverzichtelijk.
Een voorbeeld:
1234_0000_hetbestand_6789.doc
Bestaat er een mogelijkheid deze onderdelen gescheiden weer te geven met elk onderdeel in een aparte cel?
MvG
Wat wil je nou precies weergeven, waar wil je het weergeven?
Heb je al een script>?
Wil ik graag dat het volgende bestand "1234_0000_hetbestand_6789.doc " word weergegeven in het volgende:
1234 0000 hetbestand 6789.doc
Dus dat de _'s verdwijnen en dat de gegevens in een tabel (cel) komen te staan.
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
$var="1234_0000_hetbestand_6789.doc";
$var=str_replace("_", " ", $var);
echo $var
// geeft 1234 0000 hetbestand 6789.doc
?>
$var="1234_0000_hetbestand_6789.doc";
$var=str_replace("_", " ", $var);
echo $var
// geeft 1234 0000 hetbestand 6789.doc
?>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$dir = "m:/map/"; // de directory die hij uit moet lezen
$exten = array('doc');
if ($handle = @opendir($dir))
{
while (false !== ($file = @readdir($handle))) {
$bestand = $dir ."/". $file ;
$ext = pathinfo($bestand);
if ( ereg('doc',$file) )
{
echo $var="• <a href='m:/map/". $file . "' target='_blank'>". basename($file, ".php") ."</a><br>" ;
}
}
@closedir($handle);
}
$var=str_replace("_", " ", $var);
echo $var
?>
$dir = "m:/map/"; // de directory die hij uit moet lezen
$exten = array('doc');
if ($handle = @opendir($dir))
{
while (false !== ($file = @readdir($handle))) {
$bestand = $dir ."/". $file ;
$ext = pathinfo($bestand);
if ( ereg('doc',$file) )
{
echo $var="• <a href='m:/map/". $file . "' target='_blank'>". basename($file, ".php") ."</a><br>" ;
}
}
@closedir($handle);
}
$var=str_replace("_", " ", $var);
echo $var
?>
Als ik dit zo toepas, dan komen de resultaten dubbel, 1 keer met _ en een keer zonder _
Maar hoe kan ik alleen het resultaat krijgen zonder de _ en dat de link ook goed werkt, want nu opent die alleen de link met _ goed, en zonder _ opent die nog niet goed? waarschijnlijk omdat het bestand natuurlijk niet bestaat zonder _
MvG
Code (php)
Edit:
Zo komen ze in een tabel. (wel eerst ergens <table> en </table> neezetten natuurlijk
Gewijzigd op 21/11/2005 12:31:00 door Willem Jan Z
En wat je nu doet is hem 2 keer echoën...
antwoordt is al bekend
Gewijzigd op 21/11/2005 12:34:00 door Erik Rijk
Want de weergave is nu goed, alleen de link is nog niet goed.
12345
123
123456789
1234567
1234
Dan zou je weer moeten gaan kijken of je lege cellen moet plaatsen. Als je dat niet doet wordt de tabel niet door elke browser goed weergegeven.
Elwin
Hoe kan ik ervoor zorgen, dat er niks met die link gebeurt, dus dat die goed blijft werken ook in de tabel
Want het bestand heet natuurlijk 1234_000_ etc....
Maar omdat die _ vervangen wordt, werkt die link niet meer, hoe is dit te voorkomen, dat de link wel blijft werken
Gewijzigd op 21/11/2005 14:56:00 door Dirk B
Niet de _ vervangen in de link.
maar hoe kan ik ervoor zorgen dat als er op de bestandsnaam zonder _ wordt geklikt deze reageerd op de link met _
dit krijg ik nog niet voor elkaar
<a href='pagina_rest_bla'>pagina rest bla</a>
---------------------------------------------------------
Ik kan zoeken op bestanden in een directory. Als ik dan op zoek klik, krijg ik resultaten. Die resultaten dat zijn bestanden die worden weergegeven. De bestanden worden weergegeven als bijv: 1234_0000_ etc....(zo slaan we de bestanden op in een map. Deze bestanden kan je openen.
Maar als we nu de code toepassen om "_" te vervangen door " " (spatie dus). Dan blijft het zoekresultaat wel een link, maar kan de link niet vinden (openen), omdat natuurlijk "_" vervangen is door " " (spatie).
Hoe kan ik dus zorgen dat als ik dat verander, dat het nog wel een goede link blijft om het te openen.
Dus zo wordt die nu weergegeven:
1234 0000 5678 (terwijl het bestand in het echt 1234_0000_5678 heet).
Dus nu wil ik het zo dat het zo wordt weergegeven 1234 0000 5678, maar dat die de link opent als de naam 1234_0000_5678 (dus wel verwijst naar de goede bestandsnaam)
Gewijzigd op 22/11/2005 08:38:00 door Dirk B
Code (php)
Maar zoals Edwin al zei, je bestandensnamen moeten er wel allemaal hetzelfde uitzien. Dus evenveel underscores
Gewijzigd op 22/11/2005 09:14:00 door Willem Jan Z
Ik dacht zelf aan zoiets: (misschien wat doorslachtig en niet goed, maar zoiets zoek ik):
echo '<a href="'.$link.'">'.$naam.'</a>
Gebaseerd op dit script:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
$dir = "m:/map/"; // de directory die hij uit moet lezen
$exten = array('doc');
if ($handle = @opendir($dir))
{
while (false !== ($file = @readdir($handle))) {
$bestand = $dir ."/". $file ;
$ext = pathinfo($bestand);
if ( ereg('doc',$file) )
{
$link="• <a href='m:/map/". $file . "' target='_blank'>". basename($file, ".php") ."</a><br>" ;
$naam="• <a href='m:/map/". $file . "' target='_blank'>". basename($file, ".php") ."</a><br>" ;
}
}
@closedir($handle);
}
//bestandsnaam zonder _
$naam=str_replace("_", " ", $naam);
echo '<a href= "$naam"> $link</a>';
?>
$dir = "m:/map/"; // de directory die hij uit moet lezen
$exten = array('doc');
if ($handle = @opendir($dir))
{
while (false !== ($file = @readdir($handle))) {
$bestand = $dir ."/". $file ;
$ext = pathinfo($bestand);
if ( ereg('doc',$file) )
{
$link="• <a href='m:/map/". $file . "' target='_blank'>". basename($file, ".php") ."</a><br>" ;
$naam="• <a href='m:/map/". $file . "' target='_blank'>". basename($file, ".php") ."</a><br>" ;
}
}
@closedir($handle);
}
//bestandsnaam zonder _
$naam=str_replace("_", " ", $naam);
echo '<a href= "$naam"> $link</a>';
?>
bedankt voor de tabel oplossing maar om daar een goed lopende link van te maken wordt denk erg lastig
daar wil ik van af zien en het op een string houden
Probeer dit eens:"
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?
$varbestandsnaam = "dit_is_de_bestandsnaam.ext";
$weergavenaam = str_erplace("_", " ", $varbestandsnaam);
echo ('<a href="$varbestandsnaam">$weergavenaam</a>');
?>
$varbestandsnaam = "dit_is_de_bestandsnaam.ext";
$weergavenaam = str_erplace("_", " ", $varbestandsnaam);
echo ('<a href="$varbestandsnaam">$weergavenaam</a>');
?>
ik heb je script wat aangepast. Probeer zo eens:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$dir = 'm:/map/'; // de directory die hij uit moet lezen
$exten = array('doc');
if ($handle = @opendir($dir))
{
while (false !== ($file = @readdir($handle))) {
$bestand = $dir . $file ;
$ext = pathinfo($bestand);
if ( ereg('.doc',$file) )
{
$linknaam = str_replace ('_', ' ', $file);
echo '•<a href="' . $bestand . '" target="_blank">' . $linknaam . '</a>';
}
}
@closedir($handle);
}
?>
$dir = 'm:/map/'; // de directory die hij uit moet lezen
$exten = array('doc');
if ($handle = @opendir($dir))
{
while (false !== ($file = @readdir($handle))) {
$bestand = $dir . $file ;
$ext = pathinfo($bestand);
if ( ereg('.doc',$file) )
{
$linknaam = str_replace ('_', ' ', $file);
echo '•<a href="' . $bestand . '" target="_blank">' . $linknaam . '</a>';
}
}
@closedir($handle);
}
?>
Gewijzigd op 22/11/2005 10:40:00 door Jan Koehoorn
$link.... is de ongeweizigde bestandsnaam en moet de de "link" worden
bij $naam.... worden de "_" eruit gefiltert en dat moet dus het zichtbare gedeelte van de link worden
$link="• <a href='m:/map/". $file . "' target='_blank'>". basename($file, ".php") ."</a><br>" ;
$naam="• <a href='m:/map/". $file . "' target='_blank'>". basename($file, ".php") ."</a><br>" ;
als ik het dan op jou manier, robert, aanroep in de echo werkt het nog niet echt