Mathiasman Skrevet 3. april 2008 Skrevet 3. april 2008 include ('connect.php'); $bosted = mysql_query("SELECT * FROM users WHERE Username = '" . $_SESSION['username'] . "'"); $bosteda = mysql_fetch_array($bosted); if ($bosteda['Bosted'] == "") echo { "<p class='red'>Husk å fyll inn bosted i profilen din!</p>" } Hva er feil her?
Flin Skrevet 3. april 2008 Skrevet 3. april 2008 include ('connect.php'); $bosted = mysql_query("SELECT * FROM users WHERE Username = '" . $_SESSION['username'] . "'"); $bosteda = mysql_fetch_array($bosted); if [b]($bosteda['Bosted'] == "")[/b] echo { "<p class='red'>Husk å fyll inn bosted i profilen din!</p>" } Hva er feil her? Tenker jeg, du kan jo prøve med == NULL eller empty(). Forresten select * er vel ikke helt nødvendig.
alec1 Skrevet 3. april 2008 Skrevet 3. april 2008 (endret) include ('connect.php'); $bosted = mysql_query("SELECT * FROM `users` WHERE `Username` = $_SESSION['username']"); $bosteda = mysql_fetch_array($bosted); if ($bosteda['Bosted'] == " ") echo "<p class='red'>Husk å fyll inn bosted i profilen din!</p>"; Endret 3. april 2008 av alec1
Jonas Skrevet 3. april 2008 Skrevet 3. april 2008 (endret) Hva med å bruke mysql_num_rows(), istedenfor slike semi-fancy løsninger? Endret 3. april 2008 av Jonas
Martin A. Skrevet 3. april 2008 Skrevet 3. april 2008 Hva med å bruke mysql_num_rows(), istedenfor slike semi-fancy løsninger? mysql_num_rows() vil da returnere X uansett om "bosted" er satt eller ei. if( empty( trim( $bosteda['Bosted'] ) ) ) { echo "<p class='red'>Husk å fyll inn bosted i profilen din!</p>" } Feilen var at echo var feilplassert. Sammenlign min kode, med din kode.
Mathiasman Skrevet 3. april 2008 Forfatter Skrevet 3. april 2008 $bosted = mysql_query("SELECT * FROM users WHERE Username = '" . $_SESSION['username'] . "'"); $bosteda = mysql_fetch_array($bosted); if( empty( trim( $bosteda['Bosted'] ) ) ) { echo "<p class='red'>Husk å fyll inn bosted i profilen din!</p>" } Fortsatt feil. Får ikke opp feilmelding. Link
Inspired87 Skrevet 3. april 2008 Skrevet 3. april 2008 trim() ? Hva gjør den der? Sikker på at du har store bokstaver i databasen? (Username, Bosted) Også er vel mysql_fetch_row(); mere egnet en mysql_fetch_array() når det bare er en row som skal hentes.
Martin A. Skrevet 3. april 2008 Skrevet 3. april 2008 $bosted = mysql_query("SELECT * FROM users WHERE Username = '" . $_SESSION['username'] . "'"); $bosteda = mysql_fetch_array($bosted); if( empty( trim( $bosteda['Bosted'] ) ) ) { echo "<p class='red'>Husk å fyll inn bosted i profilen din!</p>" } Fortsatt feil. Får ikke opp feilmelding. Link Legg inn følgelde if( mysql_error() ) die( mysql_error() ); etter spørringen din trim() ? Hva gjør den der?Sikker på at du har store bokstaver i databasen? (Username, Bosted) Også er vel mysql_fetch_row(); mere egnet en mysql_fetch_array() når det bare er en row som skal hentes. trim() fjerner unødvendige mellomrom i starten og slutten av stringen. Og jeg vil GJERNE se dokumentasjon på ditt siste utsagn. Eneste forskjellen på mysql_fetch_array() og mysql_fetch_row() er at fetch_row() kun tillater numeriske array, og fetch_array() tillater både numeriske og "associative" (hva blir dette på norsk?) ($array['string']). mysql_fetch_assoc() tillater kun "associative". PHP manualen er forøvrig en fin båt.
Jonas Skrevet 4. april 2008 Skrevet 4. april 2008 Hva med å bruke mysql_num_rows(), istedenfor slike semi-fancy løsninger? mysql_num_rows() vil da returnere X uansett om "bosted" er satt eller ei. Ah, slik trådstarter mener, ja. En burde vel strengt tatt sjekke brukerinput FØR det settes inn i en database. :!:
Mathiasman Skrevet 4. april 2008 Forfatter Skrevet 4. april 2008 Dropper det prosjektet. Men jeg har et nytt nå. <tr><td><h3>Avatar:</h3></td><td>" if ($ida['Avatar'] == "default") echo { "<a href='index.php?page=forum&action=avatar&id=" . $ida['Id'] . "'>Last opp profilbilde</a>";} else { echo "<img src='php/scripts/forum/avatar/" . $ida['Avatar'] . ".jpg' height='50px' width='50px' />- <a href='index.php?page=forum&action=avatar&id=" . $ida['Id'] . "'>Endre profilbildet ditt her!</a>";} echo "</td></tr>";" Noen som ser noen feil her? Rent teknisk tenker jeg på.
Martin A. Skrevet 5. april 2008 Skrevet 5. april 2008 Feilplassert echo (... default") echo { "<a href='...), total mangel på linjeskift/indentering, linker og bilderhenvisninger skal/bør ha siden fulle URL i seg. Ikke den relative slik du har der.
nree Skrevet 6. april 2008 Skrevet 6. april 2008 (endret) For det første bør du lære deg å sette opp koden ryddig! Eksempel på hvordan det ikke bør gjøres: <?php $tekst = "dette er en veldig kul tekst"; $hilsen = "Hei du :) <br />"; echo "$hilsen $tekst"; ?> Eksempel på hvordan det bør gjøres: <?php // Variabler $tekst = "dette er en veldig kul tekst"; $hilsen = "Hei du :) <br />"; // Print ut variabler echo $hilsen; echo $tekst; ?> Ved å holde en ryddig standard på koden er det lett å få en oversikt over hva koden skal gjøre i etterkant. For det andre bør du lære deg PHP. echo() er en av de mest grunnleggende funksjonene i PHP og fungerer på denne måten: <?php echo("Dette vises på siden"); //Eller slik: (dette er en kommentar) $variabel = "Dette vises på siden"; echo $variabel; ?> Endret 6. april 2008 av Goggen90
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å