robgar Skrevet 9. september 2004 Del Skrevet 9. september 2004 (endret) Litt nyttig data: Os: WindowsApache 2.0.50 server PHP 4.3.8 Hei, jeg prøver å hente data fra EN tekstfil, deretter sortere dataen i en tabel. (har ikke fått MySQL til å virke, ERROR:"Host not allowed to connect... ") Jeg har komt opp med en enkel ide, men får det ikke helt til... Ide: Skrive rett og slett variabler i filen.Oppdatere disse variablene, når filen hentes inn. Plassere disse variablene i tabellen Her er koden for å hente data fra en fil (fikk tak i den her på forumet et sted, i denne kategorien) <?php$dbfile = "001.txt"; foreach(file($dbfile) as $line){ $line = rtrim($line); list($word,$explanation) = explode(":",$line); echo " $word </b> $explanation<br/>\n "; } ?> Her er innholdet i filen (.txt) $produsent=MSI; $kategori=Hovedkort; $pris="350"; $modell=648f Neo; $spes=<li>Pc 3200/400 ram </li> <li>Opp til 3.0 Ghz </li> <li>Usb2.0 </li> <li>Lan </li> <li>Lyd</li> </ul> Her er koden for å sorere dette i en tabell <?phpecho " <table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#000000"> <tr bgcolor="#999999"> <td width="15%"><div align="center"><strong>Produsent</strong></div></td> <td width="31%"><div align="center"><strong>Kategori</strong></div></td> <td width="14%"><div align="center"><strong>Pris</strong></div></td> <td width="40%"><div align="center"><strong>Model Type</strong></div></td> </tr> <tr bgcolor="#CCCCCC"> <td><div align="center">$produsent</div></td> <td><p align="center"> $kategori</p></td> <td><p align="center">$pris</p></td> <td><div align="center">$modell</div></td> </tr> <tr bgcolor="#CCCCCC"> <td colspan="4"><table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td width="46%" height="122"><ul> <p><font size="1"><a href="Vis/Skjul spes, Som PHP script, aner ikke hvordan.">Skjul/Vis spesifikasjoner</a></font></p> $spes <p align="center"></p></td> <td width="54%"><img src="" width="329" height="172" alt="Bilde"></td> </tr> </table></td> </tr> </table> <p></p> </table>; ?> Desverre så virker ikke dette. Hva har jeg gjort feil, og hvordan kan jeg rette dette opp? (Tok utgangspunkt i et hovedkort, fra MSI) Beklager for lang tråd... Håper på Svar På Forhånd Takk Ps: følger med fil som viser det tenkte oppsettet. Endret 11. september 2004 av robgar Lenke til kommentar
Lemkin Skrevet 9. september 2004 Del Skrevet 9. september 2004 2 ting: - Du mangler en <ul> i $specs variabelen (?) - Du kan ikke ha echo "dette er en $var" Resultatet av det er "Dette er en $var" Du må gjøre noe sånn: echo ' <table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#000000"> <tr bgcolor="#999999"> <td width="15%"><div align="center"><strong>Produsent</strong></div></td> <td width="31%"><div align="center"><strong>Kategori</strong></div></td> <td width="14%"><div align="center"><strong>Pris</strong></div></td> <td width="40%"><div align="center"><strong>Model Type</strong></div></td> </tr> <tr bgcolor="#CCCCCC"> <td><div align="center">'.$produsent.'</div></td> <td><p align="center">'.$kategori.'</p></td> <td><p align="center">'.$pris.'</p></td> <td><div align="center">'.$modell.'</div></td> </tr> <tr bgcolor="#CCCCCC"> <td colspan="4"><table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td width="46%" height="122"><ul> <p><font size="1"><a href="Vis/Skjul spes, Som PHP script, aner ikke hvordan.">Skjul/Vis spesifikasjoner</a></font></p> '.$spes.' <p align="center"></p></td> <td width="54%"><img src="" width="329" height="172" alt="Bilde"></td> </tr> </table></td> </tr> </table> <p></p> </table>'; Så også nå at du mangler en " på slutten. Scriptet ditt ville alldri ha virket uansett, siden du bruker echo " ". Og hver gang du har feks href="noe" så ville den gått ut fra html-mode til php-mode om du skjønner.. For å vise ting slik du vil ha dem tror jeg du må bruke usort? om det er spørsmålet iallefall. Dette kan gjøres ved at du lager 1 eller 2 linker med en $_GET var i. eks: echo '<a href="?visSpecs=ja">Vis specs</a> <a href="?visSpecs=nei">Skjul specs</a>'; Så lager du et script ut i fra usort som gjør dette Lenke til kommentar
robgar Skrevet 9. september 2004 Forfatter Del Skrevet 9. september 2004 Takk for svar, Skal lese om usort nå, og se om jeg får det til. Lenke til kommentar
robgar Skrevet 9. september 2004 Forfatter Del Skrevet 9. september 2004 Prøvde med en if () funksjon $dbfile="1";$vs = $_GET['vs']; if ($vs == Ja) ($spes=$dbfile); elseif ($spes="0"); og linkene: <a href="?vs=ja">Vis specs</a><a href="?vs=nei">Skjul specs</a> Hva har jeg gjort galt her? Lenke til kommentar
kakkle Skrevet 10. september 2004 Del Skrevet 10. september 2004 if ($vs == "ja") { $spes=$dbfile; } else { $spes="0"; } Du kan forøvrig kutte ut { og } (Det er { og } som bruke sog ikke ( og )) når det bare er en linje etter if eller else, f.eks: if ($vs == "ja") $spes=$dbfile; else $spes="0"; /kakkle Lenke til kommentar
robgar Skrevet 10. september 2004 Forfatter Del Skrevet 10. september 2004 En annen ting, hvordan legger man sammen to variabler, (har søkt igjennom dette forumet, og sindrem.com) $egen = $_POST['egenkapital']; $konto = $_POST['konto']; $kapital = eval('$egen + $konto'); echo('<br>' .$egen. '<br>' .$konto. '<br>' .$kapital.); ?> Lenke til kommentar
Inge_P Skrevet 10. september 2004 Del Skrevet 10. september 2004 $kapital = ($egen+$konto); Lenke til kommentar
robgar Skrevet 10. september 2004 Forfatter Del Skrevet 10. september 2004 Takk for den Lenke til kommentar
robgar Skrevet 11. september 2004 Forfatter Del Skrevet 11. september 2004 Er ferdig nå: Leste litt på forumet, og fant et script der man delte opp en fil i array, delene ble separert med tegnet ; Så jeg lagde det samme. <?php $antall_navn = 0; if ($fh = fopen('001.txt','r')){ while (! feof($fh)) { if (fgets($fh,1048576)) { $antall_navn++; }}} if ($antall_navn=1) print "<p>Du har $antall_navn vare i handlekurven.</p>"; else print "<p>Du har $antall_navn varer i handlekurven.</p>"; echo '<table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#000000">'; echo '<tr bgcolor="#999999"> <td width="15%"><div align="center"><strong>Produsent</strong></div></td> <td width="31%"><div align="center"><strong>Kategori</strong></div></td> <td width="14%"><div align="center"><strong>Pris</strong></div></td> <td width="40%"><div align="center"><strong>Model Type </strong></div> <div align="right"><font size="2" face="Verdana"> <a href="?vs=ja">Vis</a>/<a href="?vs=nei">Skjul</a> Info </font> </div> </td> </tr>'; $array = file("001.txt"); $sorter = sort($array); foreach ($array as $linje) { $info=split(";",$linje); $vs = $_GET['vs']; if ($vs == "ja") {$bilde = $info[5]; $stats = $info[4]; } else {$stats=""; $bilde="0";} echo '<tr bgcolor="#CCCCCC"> <td><div align="center">'.$info[0].'</div></td> <td><p align="center">'.$info[1].'</p></td> <td><p align="center">'.$info[2].'</p></td> <td><div align="center">'.$info[3].'</div></td> </tr> <tr bgcolor="#CCCCCC"> <td colspan="4"><table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td width="46%" height="22"><ul> '.$stats.' <div align="center"></div></td> <td width="54%">'; if ($bilde == $info[5]) { echo('<img src="'.$bilde.'" alt="'.$bilde.'"></td> </tr></table>'); } else {echo('</td> </tr></table>');} } ?></table> Og i 001.txt står det følgende: MSI; Hovedkort; 350, NOK; 648f Neo; <p> <ul><li>Pc 3200/400 ram </li><li>Opp til 3.0 Ghz</li><li>Usb2.0 </li><li>Lan </li><li>Lyd</li> <li><a href="http://www.msicomputer.com/product/p_spec.asp?model=648F_Neo-L">More info</a></li></ul>; 001.jpg; Alt i en linje. Takk for hjelpen $_GET funksjonen (?vs=ja/nei) og alt det andre! Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå