Mathiasman Skrevet 3. april 2008 Del 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? Lenke til kommentar
Runar0 Skrevet 3. april 2008 Del Skrevet 3. april 2008 Vel får du noen feilmeldinger? Lenke til kommentar
Flin Skrevet 3. april 2008 Del 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. Lenke til kommentar
alec1 Skrevet 3. april 2008 Del 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 Lenke til kommentar
Jonas Skrevet 3. april 2008 Del Skrevet 3. april 2008 (endret) Hva med å bruke mysql_num_rows(), istedenfor slike semi-fancy løsninger? Endret 3. april 2008 av Jonas Lenke til kommentar
Martin A. Skrevet 3. april 2008 Del 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. Lenke til kommentar
Mathiasman Skrevet 3. april 2008 Forfatter Del 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 Lenke til kommentar
Inspired87 Skrevet 3. april 2008 Del 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. Lenke til kommentar
Martin A. Skrevet 3. april 2008 Del 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. Lenke til kommentar
Jonas Skrevet 4. april 2008 Del 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. :!: Lenke til kommentar
Mathiasman Skrevet 4. april 2008 Forfatter Del 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å. Lenke til kommentar
Martin A. Skrevet 5. april 2008 Del 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. Lenke til kommentar
nree Skrevet 6. april 2008 Del 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 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å