10. august 2003 - 11:23Der er
13 kommentarer og 1 løsning
Kan ikke finde på if - sætning
Jeg har et lille nyhedssystem med billeder som jeg skal have gjort lidt mere avanceret. I indsendelsesformularen skal man nemlig uploade 4 billeder, og hvis man ikke gør det, viser fremkaldelsessiden bare 4 billeder uden noget i (det er jo klart). Billedernes navn bliver gemt i databasen, i hvert deres felt. Altså billede1, billede2, billede3, og billede4. I får lige fremkaldesessiden:
<?php $id = $_REQUEST["id"]; if(isset($id)) { mysql_connect("localhost", "user", "pass") or die("could not connect"); mysql_select_db("database") or die("could not select database"); $result = mysql_query("SELECT * FROM nyheder WHERE id='".$id."'"); while ($row = mysql_fetch_array($result)) { if(Hvis der er angivet billedenavn) { extract($row); echo" <h3>$titel</h3><br> <b>$undertitel</b><br> <p>$nyhed</p><br> <a target='blank' href='screens/".$billede1."'><img height='75' width='75' src='screens/".$billede1."'></img></a> <a target='blank' href='screens/".$billede2."'><img height='75' width='75' src='screens/".$billede2."'></img></a> <a target='blank' href='screens/".$billede3."'><img height='75' width='75' src='screens/".$billede3."'></img></a> <a target='blank' href='screens/".$billede4."'><img height='75' width='75' src='screens/".$billede4."'></img></a> <p>Kilde: $kilde</p> <p>Skribent: $skribent</p> "; } } } else { $result = mysql_query("SELECT * FROM nyheder WHERE id='".$id."'"); $entry = mysql_fetch_object($result); echo" <h3>$entry->titel</h3><br> <b>$entry->undertitel</b><br> <p>$entry->nyhed</p><br> <p>Kilde: $entry->kilde</p> <p>Skribent: $entry->skribent</p> "; }
den siger Parse error: parse error, unexpected '{' in /customers/thegameviewer.dk/thegameviewer.dk/httpd.www/TGV3.0/vis_nyhed.php on line 173 hvis jeg bruger din if sætning
strlen(string s) returnerer længden af den valgte streng s. Derfor skal den være ulig 0, hvis der står noget i feltet - og brugeren altså har angivet et billede
nu hedder if sætningen: if(strlen($row[billede1]) != "0") og der står tallet 0 i feltet billede1, men alligevel vil den vise et billede, som jo ikke er der...
udenbillede...... ka godt forstå det ikke virker... Du har ikke sat den til default NULL du skal lave den til default NULL, sådan at der er kryds i nulværdi
Forstår du ?
Altså prøv at tage et dump, så ka du se det... Det skal være `billede1` varchar(150) default NULL
Forklaring på problemet: Hvis i prøver at læse hans kode igennem, vil i opdage at: 1: den er meget rodet og uigennemskuelig 2: han bruger en masse funktioner som ikke hører hjemme der 3: forkert tegnsætning 4: behøver jeg nævne mere.....
Så jeg rensede alt koden ren for snavs, og lavede det i korrekt php kodning, og så funkede det!
Cya all around, CyFeR^ signing out!
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.