PPeddaMedlem sedan juni 20006 031 inlägg Nu missförstår du mig.
I din kod från igår 14:52 så hade du koden:
if(!empty($row['omos']))
Eftersom din variabel hette $myrow så blev resultatet på if-satsen att $row['omos'] alltid returnerade true (att den var tom) då den inte ens existerade. Och därför skrevs aldrig något ut.
Ändrar du if-satsen till att kolla $myrow['omos'] istället så kommer du få ett annat resultat.
TTomasAMedlem sedan feb. 2003173 inlägg Får det ändå inte att fungera.
<?php
if(!empty($myrow['omoss']))
{
echo '<tr><td >';
echo '<b>Om oss:</b>';
echo '</td><td>';
echo '$myrow["omoss"]';
echo '</td></tr>';
}
?>
Och det blir detta resultatet:
Om oss: $myrow["omoss"]
Fältet heter omoss
Vissa har text i - andra inte.
När det är tomt funkar allt ok men om fältet har något tecken i sig blir resultatet detta.
Min querysats ser ut så här
$result = mysql_query("SELECT * FROM Artikel, Admin WHERE Artikel.adminid = Admin.adminid AND medlemsid = $medlemsid");
$myrow = mysql_fetch_array($result);
Vad gör jag fel eller skall jag ägna mig åt :birp istället.....
Det är skillnad på enkel-och dubbelfnuttar. Med dubbelfnuttar kan du skriva in variabler mitt i strängar, samt lägga till ett flertal tecken mha escape-koder. (T ex \n för radbrytning eller \t för tabbtecken) Med enkelfnuttar kan du däremot skriva in vilka tecken du vill mitt i strängen och de skrivs ut utan modifikation. (Utom ' som måste skrivas som \' samt \ som måste skrivas \\ om du har flera backslash på raken)
Du kan t ex skriva ut just den raden utan fnuttar runt:
echo $myrow["omoss"];
Skulle du vilja sätta ett variabeluttryck mitt i en sträng kan du dels sammanfoga olika strängar:
echo "<td>".$myrow["omoss"].'</td>';
Punkterna sammanbinder strängarna. Notera hur jag blandar ' och " bara för att visa att det går utmärkt, så länge du använder en typ i taget.
Du kan också göra så här, och med den metoden måste du använda dubbelfnuttar ytterst:
echo "<td>${myrow['omoss']}</td>";
TTomasAMedlem sedan feb. 2003173 inlägg Tack för informationen, men grundproblemet återstår.
När fältet är tomt, vill jag att vara sig ledtext skrivs ut eller radbyte sker.
Med ändingen om texten i fältet ut, när fältet var ifylld, men när den är tom
kommer ändå ledtexten ut.
Är koden på rad ett rätt i mitt inlägg från 19.50 idag ( nr 22)
Om du ändrar utskriften så att du ser vad som skrivs, vad skrivs ut? Pröva även att lägga ett par bokstäver runt den utskrivna variablen för att kolla om det kanske finns ett blanksteg lagrat i databasen.
echo "X${myrow['omoss']}X";
Om så är fallet, kan du ändra if-satsen till följande:
if(!empty(trim($myrow['omoss'])))
EEmil WMedlem sedan mars 2009512 inlägg Pedda vilket exempel ska jag titta på exempel 1 ?
PPeddaMedlem sedan juni 20006 031 inlägg Kolla om mysql_num_rows returnerar noll.
if(mysql_num_rows($result) == 0)
{
echo 'Inget resultat att visa';
}
else
{
// loopa ut resultaten som vanligt
while...
{
// skriv ut resultatet...
}
}
TTomasAMedlem sedan feb. 2003173 inlägg :e
Tackar Pedda och nitro2k01.
Tillslut fick jag det att funka ok, men jag var tvyngen att ha
" runt echo "$myrow[omoss]";
Så här:
<?php
$omoss = $myrow['omoss'];
if(!empty($myrow['omoss']))
{
echo '<tr><td >';
echo '<b>Om oss:</b>';
echo '</td><td>';
echo "$myrow[omoss]";
echo '</td></tr>';
}
?>
Men med enkel ' funkade det inte.
Kanon - tack båda!
LLedelMedlem sedan dec. 2004736 inlägg Din kod innehåller lite onödiga saker och kan kortas ner :)
<?php
if(!empty($myrow['omoss']))
{
echo '<tr><td>';
echo '<b>Om oss:</b>';
echo '</td><td>';
echo $myrow["omoss"];
echo '</td></tr>';
}
?>
Du använder ju exempelvis aldrig variablen $omoss, så den behöver du inte skapa!
TTomasAMedlem sedan feb. 2003173 inlägg Tackar, mindre variablar och mindre kod är alltid positivt.
Men jag har en fråga.
Du skriver
echo $myrow["omoss"];
Och jag har lagt in
echo "$myrow[omoss]";
Vad är skillnaden - funktionsmässigt?
Som Du förstår är jag nybörjare i kodning.