Avatar billede straszek Praktikant
09. marts 2003 - 11:33 Der er 13 kommentarer og
1 løsning

Hjælpe til funktion

Jeg bruger nedestående funktion til at hente data ud fra en db, udfra variablen $nixdato:

function CheckForMessage($nixdato)
{

$caldata = mysql_query("select * from kalender where dato='$nixdato' and org='$gruppeid'") or die(mysql_error());
$row = mysql_fetch_array($caldata);

Det virker fint med $nixdato, men jeg vil også gerne have den til at finde poster hvor org='$gruppeid', men det vil den ikke!

$gruppeid er til stede udenfor funktionen, men ikke inden i. Skrive jeg f.eks. org='12', er der ingen problemer, men et er jo knapt så hensigtsmæssigt.

Hvordan skal det kringles?


Søren
Avatar billede schaefner Juniormester
09. marts 2003 - 11:37 #1
function CheckForMessage($nixdato, $gruppeid) {
  $caldata = mysql_query("select * from kalender where dato='$nixdato' and org='$gruppeid'") or die(mysql_error());
  $row = mysql_fetch_array($caldata);
}

og så kalde den sådan her:

CheckForMessage("var","var1");
Avatar billede fangel Nybegynder
09. marts 2003 - 11:38 #2
lav en

global $gruppeid;

inde i funktionen.. så findes variablen også derinde...

Morten
Avatar billede straszek Praktikant
09. marts 2003 - 11:49 #3
Jeg har nu prøvet begge af ovenstående foreslag, lige lidt hjælpe det.

Min funktion:
function CheckForMessage($nixdato, $submenu)
{
$caldata = mysql_query("select * from kalender where dato='$nixdato' and org='$submenu'") or die(mysql_error());
$row = mysql_fetch_array($caldata);


return "<a href=\"java script:void(0)\" onClick=\"window.open('arr.php?arrid$row[id]','arr','width=580,height=550,menubar=no,scrollbars=yes')\">$row[overskrift]</A>";

}

og her kalder jeg den:
echo  "<td width=100 valign=top bgcolor=#ffffff><span class=\"textsmallb\">
            <font face=Verdana size=-2><b>".$date." </b><br>".CheckForMessage($nixdato, $submenu)."</td>\n</span>";
Avatar billede schaefner Juniormester
09. marts 2003 - 11:50 #4
får du nogen fejl?
Avatar billede straszek Praktikant
09. marts 2003 - 11:53 #5
Nej ingen fejl, bare ingen data. Angiver jeg manuelt org='12', hentes alle de data ud som er meningen. Skriver jeg echo "$submenu";, uden for funktionen er svaret 12?!


Søren
Avatar billede schaefner Juniormester
09. marts 2003 - 11:55 #6
Hvad hvis du gør sådan her i din funktion:

$caldata = mysql_query("select * from kalender where dato='$nixdato' and org=$submenu") or die(mysql_error());
Avatar billede straszek Praktikant
09. marts 2003 - 11:59 #7
det giver:
You have an error in your SQL syntax near '' at line 1
Avatar billede fangel Nybegynder
09. marts 2003 - 12:00 #8
prøv at smide 'er uden om $submenu
Avatar billede straszek Praktikant
09. marts 2003 - 12:01 #9
Så er vi jo bare tilbage til start?! - ingen fejl, bare ingen data
Avatar billede fangel Nybegynder
09. marts 2003 - 12:06 #10
$gruppeid = 12;
function get_data($nixdato){
  global $gruppeid;
  $query = mysql_query("SELECT * FROM tabel WHERE dato = '$nixdato' AND gruppe = '$gruppeid'");
  while($data = mysql_fetch_array($query)){
    // det du vil udskive...
  }
}

get_data($nixdato);

dette burde virke...

Morten
Avatar billede fangel Nybegynder
09. marts 2003 - 12:08 #11
hov... havde ikke set hvad dine felter hed... det skal du lige rette...
Avatar billede straszek Praktikant
09. marts 2003 - 12:10 #12
Det fatter jeg ikke en brik af; Det burde da være muligt få $submenu ind i funktion, uden at skulle omskrive det hele. Desuden er $submenu dynamisk, og dermed ikke altid 12, så det vil jo ikke virke.
Avatar billede straszek Praktikant
09. marts 2003 - 12:26 #13
Sådan skulle det gøres:

function CheckForMessage($nixdato)
{
GLOBAL $submenu;
$caldata = mysql_query("select * from kalender where dato=$nixdato and org='".$submenu."'") or die(mysql_error());
$row = mysql_fetch_array($caldata);


return "<a href=\"java script:void(0)\" onClick=\"window.open('arr.php?arrid$row[id]','arr','width=580,height=550,menubar=no,scrollbars=yes')\">$row[overskrift]</A>";

}

Og kaldet:
echo "<td width=100 valign=top bgcolor=#CCCCCC><span class=\"textsmallb\">
            <font face=Verdana size=-2><b>".$date." </b><br>".CheckForMessage($nixdato)."</td>\n</span>";
Avatar billede schaefner Juniormester
09. marts 2003 - 12:26 #14
er du sikker på at gruppeid altid indeholder noget?
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