Avatar billede funkylezzz Praktikant
16. januar 2010 - 19:46 Der er 4 kommentarer og
1 løsning

Hjælp til rate script med SQL

Hej
jeg har et rating script som jeg skal bruge flere steder på mit website.
Mit problem er at php filen laver et table i mysql men da jeg skal bruge scriptet flere steder på mit website skal jeg have ændret php filen så den laver et nyt table til hver script.
Kan jeg ændre php filen så den laver en form for et default table?

koden ser sådan her ud:

<?php

function create_table($table, $dbase)
{
    global $db;
  if(!table_exists($table,$dbase)){
      $query='CREATE TABLE IF NOT EXISTS `ratings` (
`ratingID` int(11) NOT NULL auto_increment,
`id` int(11) NOT NULL, 
`votes` int(11) NOT NULL,
`rating` int(1) NOT NULL,
`ip` varchar(15) NOT NULL,
PRIMARY KEY (`ratingID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;

';
  if(!$db->query($query)){
  echo $db->errorMsg;
  exit; 
  }
  }
 

  }
 
  function table_exists ($table, $dbase) {
    $tables = mysql_list_tables ($dbase);
    while (list ($temp) = mysql_fetch_array ($tables)) {
        if ($temp == $table) {
            return TRUE;
        }
    }
    return FALSE;
}
function show_stars($rating) {
    global $empty,$half,$full,$d,$stars;
   
   
   

    // Iterate through the stars, and show the correct type of star image
    // based on the rating.
    for($i = 1; $i <= $stars; $i++) {
       
        if($rating > $i - .5) {
      $show_stars.=ratings_image($full, "good");
        } else if($rating > $i - 1) {
            $show_stars.=ratings_image($half, "fair");
        } else {
            $show_stars.=ratings_image($empty, "poor");
        }
     
    }
          return $show_stars;
}
function ratings_image($filename, $alt) {
    global $url,$root_folder;
    $star_url= '<img src="' . $url.$root_folder.$filename . '" width="12" height="12" alt="' . $alt .' ">'; 
  // echo("\t\t<img src=\"" . $url . urlencode($filename) . "\" alt=\"" . $alt . "\" />\r\n");
  return $star_url;
}

?>
Avatar billede funkylezzz Praktikant
16. januar 2010 - 19:48 #1
Jeg vil lige sige at det er første gang jeg arbejder med sql
Avatar billede BrJoe Nybegynder
16. januar 2010 - 22:15 #2
Lad mig lige sige, at hvis du vil have at den skal lave nye tabeller hele tiden er det på ingen måde ideelt da den kommer til at sløve databasen helt vildt. Især hvis der kommer mange tabeller.
Avatar billede funkylezzz Praktikant
16. januar 2010 - 23:23 #3
Jeg skal ca. bruge 50 stk.
Vil det sløve meget?

Har du en ide til hvad jeg så kan gøre?
Avatar billede funkylezzz Praktikant
16. januar 2010 - 23:25 #4
Kan jeg omskrive så det bliver stored i en xml i stedet?
Og i så fald hvordan?
Avatar billede funkylezzz Praktikant
17. januar 2010 - 12:19 #5
Finder på noget andet og lukker
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
Computerworld tilbyder specialiserede kurser i database-management

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