Avatar billede need4speed Nybegynder
16. februar 2003 - 12:25 Der er 23 kommentarer og
1 løsning

Echo

Ok.. er rimelig newbie til php men burde min kode ikke virke?

Jeg ønsker den skal skrive "virker" hvis $infolink i min mysql database, hvis den indeholder noget og hvis den ikke indeholder noget så skal den skrive ingen ting.

Her er min kode:

<? if($infolink == "2") { echo("VIRKER"); } else { echo(""); } ?>
Avatar billede spunk13 Nybegynder
16. februar 2003 - 12:30 #1
prøv uden () efter echo
Avatar billede nicklasb Nybegynder
16. februar 2003 - 12:31 #2
det du har sat den til der, er at printe VIRKER hvis $infolink er lig med 2.. Og KUN når den er lig med to..

hvis du vil tjekke og den indeholder betydeligt data skal du i stedet bruge en strlen

Altså så der kommer til at stå:

<? if (strlen($infolink) > 0) { echo "VIRKER"; } else { echo ""; } ?>

Du kan så vælge hvor mange anslag $infolink skal indeholde for at blive godkendt der hvor jeg har skrevet 0 nu.. (altså flere end 0 :)
Avatar billede riversen Nybegynder
16. februar 2003 - 12:31 #3
jo, hvis infolink er "2"

en alternativ måde at skrive det på

echo ( $infolink == "2" ? "Virker" : "" );

lav evt. en udskrift af infolink hvis det ikke kører
Avatar billede riversen Nybegynder
16. februar 2003 - 12:31 #4
eller måske echo ( ($infolink == "2") ? "Virker" : "" );

har ikke testet
Avatar billede need4speed Nybegynder
16. februar 2003 - 12:51 #5
Ok.. men fordi jeg har skrevet f($infolink == "2") så troede jeg det betød, at hvis infolink indeholder data så skal den gøre dit og dat. Troede det var ligemeget om den hed 2, g eller far. Bare der ikke stod == " " altså ingenting.
Avatar billede need4speed Nybegynder
16. februar 2003 - 12:54 #6
Hmm den echoer intet nicklas... det sjove er at jeg har lavet noget lignende med et link og der virker det.. se her: 

<a target="_blank" href="<? if($infolink == "2") { echo("$row[infolink]"); } else { echo(""); } ?>"><?=$row[infolink]?></a>
Avatar billede riversen Nybegynder
16. februar 2003 - 12:55 #7
nej, det er en direkte sammenligning

så skal du skrive $infolink != ""
Avatar billede nicklasb Nybegynder
16. februar 2003 - 12:59 #8
har du sat variablen $infolink overhovedet?? Du udskriver $row og tjekker på $infolink..

Skulle det så ikke være:

<?
$infolink = "$row[infolink]";
if (strlen($infolink) > 0) { echo "VIRKER"; } else { echo ""; }
?>

Den tror jeg vil virke.. :)

Men du kan jo evt prøve at skrive sålede:

<?
$infolink = "";
if (strlen($infolink) > 0) { echo "VIRKER"; } else { echo ""; }
?>

Så skulle den ikke så gerne skrive noget.. Prøv så at skrive noget mellem de to "" i anden linie.. Nu skulle den så gerne skrive "Virker"
Avatar billede enragedbudda Nybegynder
16. februar 2003 - 13:03 #9
hvad med at gøre sådan her istedet??

<?php
if($infolinki != ""){
echo "<a target=\"_blank\" href=\"".$row[infolink]."\">".$row[infolink]."</a>";
} else {
echo "";
}
?>

Så udskriver den kun noget når der er brug for det!
Avatar billede need4speed Nybegynder
16. februar 2003 - 13:04 #10
Det jeg vil lave er at der skal være en lille overskrift som hedder Website nedenunder skal linket komme. Men overskriften og linket skal kunne komme hvis linket eksistere i databasen.
Avatar billede schaefner Juniormester
16. februar 2003 - 13:07 #11
<?
$query = mysql_query("SELECT * FROM tabel");
$row = mysql_fetch_array($query);
if ($row[overskrft] != "0"){
    echo "$row[overskrft]";
}
if ($row[link] != "0"){
    echo "$row[link]";
}
?>
Avatar billede schaefner Juniormester
16. februar 2003 - 13:09 #12
Hov, sådan:
<?
$query = mysql_query("SELECT * FROM tabel");
$row = mysql_fetch_array($query);
if ($row[overskrft] != ""){
    echo "$row[overskrft]";
}
if ($row[link] != ""){
    echo "$row[link]";
}
?>
Avatar billede enragedbudda Nybegynder
16. februar 2003 - 13:09 #13
så skal du bare bruge min metode... og sætte overskrift ind under osv... og sætte $infolink til '1' hvis databasen eksiterer og $infolink til '' hvis den ikke eksiterer...
Avatar billede need4speed Nybegynder
16. februar 2003 - 14:28 #14
overskriften ligger ikke i databasen... det er kun infolink som findes i databasen.
Avatar billede enragedbudda Nybegynder
16. februar 2003 - 14:31 #15
if($row[infolink] != ""){
echo "<h1>overskrift</h1><br>";
echo "<a target=\"_blank\" href=\"".$row[infolink]."\">".$row[infolink]."</a>";
} else {
echo "";
}
Avatar billede need4speed Nybegynder
16. februar 2003 - 14:31 #16
Det her giver da ikke mening ==>> schaefner

har du ikke skrevet hvis infolink er = ingenting så skal den skrive echo infolink.. men hvordan skal den kunne echo noget som ikke findes.
Avatar billede need4speed Nybegynder
16. februar 2003 - 14:33 #17
Thx budda du havde løsningen!
Avatar billede schaefner Juniormester
16. februar 2003 - 14:35 #18
need4speed >> Min tjekker, at hvis overskrift IKKE er lig med ingenting, så skal den udskrives. Det samme med link. Det er det samme som enragedbudda har skrevet her til sidst.
Avatar billede schaefner Juniormester
16. februar 2003 - 14:36 #19
og enragedbudda's løste jo dit problem, så det burdde min vel også gøre?
Avatar billede enragedbudda Nybegynder
16. februar 2003 - 14:44 #20
Schaefners løsning er mere korrekt...

Og kan nemt rettes til dine "behov" ;)
Avatar billede schaefner Juniormester
16. februar 2003 - 14:51 #21
Alt i alt må det være sådan her den skal se ud:
<?
$query = mysql_query("SELECT * FROM tabel");
$row = mysql_fetch_array($query);
if ($row[infolink] != "") {
    echo "Das overskrift";
    echo "<a href=\"$row[infolink]\">$row[infolink]</a>";
}
?>
Avatar billede enragedbudda Nybegynder
16. februar 2003 - 14:56 #22
Det vil jeg oss mene... men maybe med en mysql_connect() og mysql_select_db() ting :D
Avatar billede schaefner Juniormester
16. februar 2003 - 15:06 #23
ja, men det har han vel allerede ;)
Avatar billede need4speed Nybegynder
17. februar 2003 - 17:42 #24
Ja jeg har allerede connect til mysql længere oppe i min fil.. sorry men troede det var en selvfølgelig :)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester