Avatar billede rix Novice
29. maj 2011 - 17:05 Der er 6 kommentarer og
1 løsning

udskriver forkert

hej jeg er igang med at lave en besked system men den udskriver forkert
først koden som udskriver fejlen

$massege = mysql_query("SELECT * FROM ".MySQL_PATH."privat_massege WHERE too_id='".$member_array['MEMBER_ID']."' ORDER BY send_date DESC") OR DIE(mysql_error());
while($result_massege = mysql_fetch_assoc($massege)){
echo "<tr>";
if($result_massege['have_see'] == 0){
echo "<td class=\"new\"> </td>\n";
}else{
echo "<td class=\"old\"> </td>\n";   
}   
if(!empty($result_massege['form_Id'])){
echo "<td class=\"t\">".user_name(1, $result_massege['form_Id'], false)."</td>\n";
}else{
echo "<td class=\"t\">".htmlentities($lang['FROM_SYSTEM'])."</td>\n";
}
echo "<td class=\"t\">".safee_mysql_print($result_massege['title'])."</td>
<td class=\"t\">".topic_post_time($result_massege['send_date'])."</td>
</tr>";   
}

den udskriver koden ca såden her

<tr>
<td class="new"> </td>
<td class="t">rix</td>
Det forkerte<td class="t"></td>
<td class="t">1 time siden</td>
</tr>

altså sådan ser den forkerte linje ud

echo "<td class=\"t\">".safee_mysql_print($result_massege['title'])."</td>

og den function som der er galt med (og det ved jeg det er)

function safee_mysql_print($text){
    if(!empty($text)){
        $text = html_entity_decode($text);   
        $text = htmlentities($text, ENT_QUOTES, "UTF-8");   
        print $text;
    }else{
        print "safe_mysql_print ERROR";
    }
}

nogen som ved hvad fejlen er?
Avatar billede majbom Novice
29. maj 2011 - 19:43 #1
nu kender jeg ikke safee_mysql_print eller safe_mysql_print for den sags skyld - noget hjemmelavet?

men er der ikke et e for meget i den linje du selv siger fejlen er i?

echo "<td class=\"t\">".safee_mysql_print($result_massege['title'])."</td>
Avatar billede majbom Novice
29. maj 2011 - 19:44 #2
og så en anden ting - det hedder message og ikke massege :)
Avatar billede rix Novice
29. maj 2011 - 19:54 #3
hehe den function er noget jeg selv har lavet men var lidt usikker på om navnet allerede var i php ind bygget fuction so smed lige en ekstere e til sidst
functionen ser sådan her ud

function safee_mysql_print($text){
    if(!empty($text)){
        $text = html_entity_decode($text); 
        $text = htmlentities($text, ENT_QUOTES, "UTF-8"); 
        print $text;
    }else{
        print "safe_mysql_print ERROR";
    }
}

hehehe :D ja okey min engelsk er ikke den bedste :D
29. maj 2011 - 20:53 #4
Nu er det nogen tid siden, at jeg har været igang med php funktioner, men prøv at kik på det her:

Du giver funktionen safee_mysql_print() en tekst, og den tekst transformerer du, og ved funktionens slutning giver du instruks om at printe den transformerede tekst.  Jeg ville mene, at naar du fra en <td> kalder funktionen skal funktionen i stedet returnere den transpormerede tekst.  Altsaa:

function safee_mysql_print($text)
{
  if(!empty($text))
  {
    $text = html_entity_decode($text);
    $text = htmlentities($text, ENT_QUOTES, "UTF-8");
  }
  else $text = "safe_mysql_print ERROR";
  return $text;
}
Avatar billede rix Novice
29. maj 2011 - 20:56 #5
#4
ved ikke helt hvad der er sket men ihvertigfald virkede det :D mange tak hvis du ville have point så lig en svar :D
29. maj 2011 - 21:02 #6
Der er sket det at din kode echo "<td class=\"t\">".safee_mysql_print($result_massege['title'])."</td> beder om et resultat fra en funktion og forventer saa at faa resultatet leveret fra funktionen i stedet for at funktionen ordner det selv.  Hvis du staar og skal bage en kage, men naar du kommer til det med at knække tre æg og røre dem i kagen opdater du at du ingen æg har.  Så beder du en om at hente æggene, så du kan knække dem og lave kagen færdig.  Hvis han saa skaffer æggene og knækker dem selv, saa får du en error med kagen.
Avatar billede rix Novice
29. maj 2011 - 21:04 #7
ahhh så lærte jeg også det :D mange tak
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