praegune kellaaeg 18.06.2025 13:29:12
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
Risto40
HV vaatleja
liitunud: 31.10.2004
|
27.05.2009 13:44:49
Piltdi pealkiri txt failist |
|
|
tere,
kuna ma ise PHP-d ei tunne, oskan vaid mega lihtsaid asju muuta, siis oleks nats abi vaja. Mul on tehtud hetkel nii, et pildi pealkirjana ehk title='' kuvatakse pildifaili nimi. Kuid sooviks lisada title'sse veel mõnd kommentaari, kuid mitte igakord. Seega, peaks script välja nägema midagi sellist, et loeb pildifaili nime, seejärel heidab pilgu ühte kindlasse .txt faili, kus asuvad mitmete piltide kommentaarid. Ning kui script leiab failist rea mille esimene 'sõna' vastab pildifaili nimele, siis ta loeb sealt välja teksti, mis sellele järgneb (eraldamiseks võiks teksti olla nt < ja > vahel). ja minu ülesanne oleks siis vaid see nt $komm_txt_failist PHP's title jutumärkide vahele panna. ja juhul, kui õiget rida ei leidu, siis ei lisata midagi - väärtus = ""
a ja faili-/pildinimi on mul juba failist kätte saadud, oletame, et see on $failinimi
viitsib keegi siukse asja PHP'na kirjutada?
|
|
tagasi üles |
|
 |
airm
HV Guru
liitunud: 26.02.2003
|
27.05.2009 14:12:20
|
|
|
Sa oled juba kõik ära kirjeldanud jutuga,
nüüd on ainult tõlkimise vaev php -keelde.
Sa ju oled miskit teinid ka juba, vaja ainult täiendada(kirjeldus oli ilus)?
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
   |
:: |
2 :: |
1 :: |
50 |
|
tagasi üles |
|
 |
Risto40
HV vaatleja
liitunud: 31.10.2004
|
27.05.2009 14:39:30
|
|
|
jep, vaid täiendada oleks vaja. ehk siis lauset, mis võrdleks txt failis olevate ridade esimesi sõnu $failinimi'ga, matchi korral loeks väärtuse <ja > vahelt ning jätaks loetu meelde $komm_txt_failist sisse.
|
|
tagasi üles |
|
 |
airm
HV Guru
liitunud: 26.02.2003
|
27.05.2009 14:56:17
|
|
|
Kirjuta sinna faili hoopis massiiv:
<?php
$massiiv = Array(''=>'', ''=>'', ''=>'', ''=>'', ''=>'');
?>
include sisse ja massiiviga on lihtsam sul võidelda...
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
   |
:: |
2 :: |
1 :: |
50 |
|
tagasi üles |
|
 |
Risto40
HV vaatleja
liitunud: 31.10.2004
|
27.05.2009 17:42:59
|
|
|
sry, mu teadmisest PHP's ikka väga väikesed, ega saa aru, mis sa kirjutasid.
koodijupp, mis mul juba olemas ja töötab, on all olev.
-----------------------
<?
$names = array();
//$dates = array();
$dir = 'pildikaust';//PILTIDE ASUKOHT
if ($handle = opendir($dir)) {
while (false !== ($file = readdir($handle))) {
if (strlen($file) - strpos(strtoupper($file), '.JPG') == 4) {
$names[] = $file;
$dates[] = filectime("$dir/$file");
}
}
closedir($handle);
}
arsort($dates); //asort sorteerib ja paneb uuemad lõppu, arsort on vastupidi
foreach ($dates as $key=>$value) {
$file = $names[$key];
$str = $file; //failinimi laiendita
$str = explode(".", $str); //failinimi laiendita
$failinimi_laiendita = $str[0]; //failinimi laiendita
//$date = date('d-m-Y', $value);
echo "
<a class='thumb_name' href='$dir/$failinimi_laiendita","_suur.jpg' title='Faili nimi: $failinimi_laiendita'>
<div align='center'>
<img src='$dir/$file' border='1' align='center'/><table border='0' cellspacing='0' cellpadding='0'><tr><td valign='bottom'>$failinimi_laiendita</td></tr></table>
</div>
</a>
";
}
?>
----------------------------
see koodijupp siis loeb kaustast jpg failid ning kuvab need lisades veel lingi suurele pildile.
aga nüüd oletame, et mul on samas kaustas veel olemas fail KOMMENTAARID.txt, ning nt pildifail nimega PILT001.jpg. Mida ma tahan, on see, et koodis oleks ka rida, mis kuvatud pildile (pilt001.jpg) lisab ka txt failis oleva kommentaari, kui seal on see olemas. Txt faili sisu näeks välja selline:
PILT001.jpg <pildi 001 kommentaar>
PILT002.jpg <pildi 002 kommentaar>
jne...
ja see kood võiks käia kõik read läbi kuni leiab kuvatud failinime seejärel loeb kommentaari nurksulgude seest. Kui aga failinime ridade esimesest sõnast ei leitud, siis ei loeta ka midagi.
lõplik tulemus peaks siis olema, et minu ülesanne on vaid suur ja väike pilt kasuta visata ning php teeb ülejäänu.
|
|
tagasi üles |
|
 |
airm
HV Guru
liitunud: 26.02.2003
|
27.05.2009 19:13:51
|
|
|
Ma ei hakka sulle valmis asja kirjutama.
Ma annan sulle õnge...
text -fail:
<?php
$massiiv = Array(
"PILT001.jpg" =>"pildi 001 kommentaar",
"PILT002.jpg" =>"pildi 002 kommentaar",
"PILT001.jpg" =>"pildi 003 kommentaar"
)
?>
Selles scriptis algusesse paned lause:
include('textifail.txt');
Kusagile vahele kirjutad:
$kommentaar='';
if (array_key_exist($str, $massiiv)) {$kommentaar = $massiiv[$str];}
$str on sul miski failinimi.
Pusi lõpuni nüüd ise
|
|
Kommentaarid: 56 loe/lisa |
Kasutajad arvavad: |
   |
:: |
2 :: |
1 :: |
50 |
|
tagasi üles |
|
 |
andrusny
Kreisi kasutaja

liitunud: 20.03.2006
|
27.05.2009 19:22:09
|
|
|
See tuleb veidi käsitöine sul, kuidas sa sellisel kujul txt faili salvestad? Selleks on olemas php funktsioonid, et massiivi stringina salvestada ja tagasi lugeda. Üks võimalus, kasutad serialize() ja unserialize()
Selles failis tekitad $kom_massiiv massiivi milles on keyks failinimi ja sisu $mingisisu
serialize teeb sellest massiivist stringi mille salvestad faili. Tagasi saad unserialize abil.
Teed kasutajaliidese, mille abil saad neid pildi komme lisada. Algselt on kõigi kommentar Pilt.
$mingisisu='Pilt';
foreach ($dates as $key=>$value) {
$file = $names[$key];
$kom_massiiv[$file]=$mingisisu;
}
$salvestus=serialize($kom_massiiv);
// salvestad txt faili |
_________________
 |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|