Avatar billede ttopholm Nybegynder
07. september 2005 - 16:20 Der er 11 kommentarer og
1 løsning

fejl i mysql ting

Jeg har denne her:
<?php
$conn = mysql_connect("localhost", "xxx", "xxxx");
mysql_select_db("xxxx");
$result = mysql_query("SELECT * FROM dom WHERE os = 'linux'");
while ($row = mysql_fetch_array($result)) {
  $dom = preg_replace('/\./', '', $row["domain"]);
  $name = md5(uniqid(rand(), true)).".zip";
  $a = `sudo -u root /root/backup.sh $dom $name`;
  echo $a;
  $antal = mysql_query("SELECT COUNT(*) AS antald FROM backup WHERE domain ='{$row["domain"]}'")
  while ($row1 = mysql_fetch_array($antal)) {
    If($row1["antald"] < 3)
        {
          mysql_query("INSERT INTO BACKUP (domain, dato, navn) VALUES ('{$row["domain"]}','{date("Y-m-d H:i:s"}','{$name}')");
        }


  }

}
mysql_close($conn);
?> 

Den giver mig denne fejl i linien:

parse error, unexpected T_WHILE in

i linien:  while ($row = mysql_fetch_array($antal)) {
Avatar billede Slettet bruger
07. september 2005 - 16:22 #1
Du mangler ; på linie over.
Avatar billede Slettet bruger
07. september 2005 - 16:22 #2
<?php
$conn = mysql_connect("localhost", "xxx", "xxxx");
mysql_select_db("xxxx");
$result = mysql_query("SELECT * FROM dom WHERE os = 'linux'");
while ($row = mysql_fetch_array($result)) {
  $dom = preg_replace('/\./', '', $row["domain"]);
  $name = md5(uniqid(rand(), true)).".zip";
  $a = `sudo -u root /root/backup.sh $dom $name`;
  echo $a;
  $antal = mysql_query("SELECT COUNT(*) AS antald FROM backup WHERE domain ='{$row["domain"]}'");
  while ($row1 = mysql_fetch_array($antal)) {
    If($row1["antald"] < 3)
        {
          mysql_query("INSERT INTO BACKUP (domain, dato, navn) VALUES ('{$row["domain"]}','{date("Y-m-d H:i:s"}','{$name}')");
        }


  }

}
mysql_close($conn);
?>
Avatar billede Slettet bruger
07. september 2005 - 16:22 #3
- Som svar :o)
Avatar billede ttopholm Nybegynder
07. september 2005 - 16:30 #4
nu får jeg fejl her:
mysql_query("INSERT INTO BACKUP (domain, dato, navn) VALUES ('{$row["domain"]}','{date("Y-m-d H:i:s"}','{$name}')");
Avatar billede ttopholm Nybegynder
07. september 2005 - 16:30 #5
T_string
Avatar billede Slettet bruger
07. september 2005 - 16:32 #6
mysql_query("INSERT INTO BACKUP (domain, dato, navn) VALUES ('". $row['domain'] ."','". date('Y-m-d H:i:s') ."','". $name ."')");
Avatar billede Slettet bruger
07. september 2005 - 16:34 #7
Din fejl lå i dit date() felt, men det er unødvendigt med {} om variabler, hvorimod det er anbefalelsesværdigt at sætte variabler udenfor strenge (f.eks. $var = "hej ". $name .".";)
Avatar billede ttopholm Nybegynder
07. september 2005 - 16:46 #8
Perfekt ;-)
Avatar billede Slettet bruger
07. september 2005 - 16:49 #9
Tak for point. :o)
Avatar billede ttopholm Nybegynder
07. september 2005 - 17:09 #10
Lige hurtigt.. kan ikke se fejlen igen:
    }else{
      $slet = mysql_query("SELECT * FROM backup WHERE domain ='". $row['domain'] ."' ORDER BY dato LIMIT 0,1");
      while($row2 = mysql_fetch_array($slet)) {
        unlink("/home/backup/" .$row2['navn']);   
        mysql_query("DELETE FROM backup WHERE id = " . $row2['id'] . "");
        mysql_query("INSERT INTO BACKUP (domain, dato, navn) VALUES ('". $row['domain'] ."','". date('Y-m-d H:i:s') ."','". $name ."')");
    }

  }
Avatar billede Slettet bruger
07. september 2005 - 18:21 #11
Hvad er fejlen nu?
Avatar billede Slettet bruger
07. september 2005 - 18:22 #12
Du skal sikkert have $row2['domain'] i stedet for $row['domain']...
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