Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 16:42 Der er 27 kommentarer

UPDATE + evt. ekstra fejl bagefter

if ($_POST['edit_klan'] != "" && $_POST['edit_vundne'] != "" && $_POST['edit_uafgjorte'] != "" && $_POST['edit_tabte'] != "" && $_POST['edit_vr'] != "" && $_POST['edit_tr'] != "") {

$result = $_POST['edit_vr']-$_POST['edit_tr'];
$point = $_POST['edit_vundne']*2+$_POST['edit_uafgjorte'];

$query = mysql_query("UPDATE liga (klan,vundne,uafgjorte,tabte,vr,tr,result,point) VALUES ('" . $_POST['edit_klan'] . "','" . $_POST['edit_vundne'] . "','" . $_POST['edit_uafgjorte'] . "','" . $_POST['edit_tabte'] . "','" . $_POST['edit_vr'] . "','" . $_POST['edit_tr'] . "','" . $result . "','" . $point . "')") or die (db_error());

Den melder fejl på dem her. Det må være en fejl i den måde det er skrevet op, fordi de er alle oprettet i min tabel (MySQL), og de vises også fint når jeg skriver dem ud i en input.
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 16:43 #1
Har overvejet om man kan skrive minus, plus og gange på den måde som jeg gør:

$result = $_POST['edit_vr']-$_POST['edit_tr'];
$point = $_POST['edit_vundne']*2+$_POST['edit_uafgjorte'];
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 16:44 #2
Ehmm.. Det kan jeg så se det ikke er :D

Fatal error: Call to undefined function: db_error() in /customers/divinium.dk/divinium.dk/httpd.www/xg/index.php on line 106
Avatar billede michael_stim Ekspert
28. marts 2007 - 16:50 #3
or die (db_error());

or die (mysql_error());
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 17:03 #4
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '(klan,vundne,uafgjorte,tabte,vr,tr,result,point) VALUES ('Team-
Avatar billede erikjacobsen Ekspert
28. marts 2007 - 17:36 #5
Du skal lige have den rigtige syntaks. Generelt:  UPDATE liga SET felt=værdi WHERE ...
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 17:57 #6
$query = mysql_query("UPDATE liga SET (klan,vundne,uafgjorte,tabte,vr,tr,result,point) VALUES ('" . $_POST['edit_klan'] . "','" . $_POST['edit_vundne'] . "','" . $_POST['edit_uafgjorte'] . "','" . $_POST['edit_tabte'] . "','" . $_POST['edit_vr'] . "','" . $_POST['edit_tr'] . "','" . $result . "','" . $point . "')") or die (mysql_error());

Det der virker heller ikke. Kan du give et mere konkret svar?
Avatar billede michael_stim Ekspert
28. marts 2007 - 18:05 #7
erik>>Mærkeligt nok så godkender MySQL den syntax til en update. Har selv studset over den et par gange ;o)
Avatar billede michael_stim Ekspert
28. marts 2007 - 18:10 #8
Men skriv update som erikjacobsen foreslår (bare for at følge standarden).
Hvilken fejl får du?
$query = mysql_query("UPDATE liga SET klan='" . $_POST['edit_klan'] . "',vundne='" . $_POST['edit_vundne'] . "',uafgjorte='" . $_POST['edit_uafgjorte'] . "',tabte='" . $_POST['edit_tabte'] . "',vr='" . $_POST['edit_vr'] . "',tr='" . $_POST['edit_tr'] . "',result='" . $result . "',point='" . $point . "'") or die (mysql_error());
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 18:22 #9
Hmm .. Der er ingen fejl, men der kommer kun 1 række :S

www.divinium.dk/xg
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 18:26 #10
Det bliver den desværre ved med..

Skal jeg skrive:

WHERE id = "' . $_GET['id'] . '"
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 18:27 #11
Det hjælper heller ikke
Avatar billede michael_stim Ekspert
28. marts 2007 - 18:29 #12
Ja du skal have et id med hvis du ikke vil opdatere allesammen. WHERE id = "' . $_GET['id'] . '" eller WHERE id = "' . $_POST['id'] . '"
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 18:29 #13
Her er den nøjagtige kode:


<?

if ($_POST['edit_klan'] != "" && $_POST['edit_vundne'] != "" && $_POST['edit_uafgjorte'] != "" && $_POST['edit_tabte'] != "" && $_POST['edit_vr'] != "" && $_POST['edit_tr'] != "") {

$result = $_POST['edit_vr']-$_POST['edit_tr'];
$point = $_POST['edit_vundne']*2+$_POST['edit_uafgjorte'];

$query = mysql_query("UPDATE liga SET klan='" . $_POST['edit_klan'] . "',vundne='" . $_POST['edit_vundne'] . "',uafgjorte='" . $_POST['edit_uafgjorte'] . "',tabte='" . $_POST['edit_tabte'] . "',vr='" . $_POST['edit_vr'] . "',tr='" . $_POST['edit_tr'] . "',result='" . $result . "',point='" . $point . "' WHERE id='" . $_GET['id'] . "'") or die (mysql_error());

}

    $i = "1";
    $query = mysql_query("SELECT * FROM liga ORDER by point DESC,result DESC");
    while($liga = mysql_fetch_array($query)) {

?>

<form action="" method="post">

      <tr>
        <td><? echo $i; ?></td>
        <td><input type="text" size="40" name="edit_klan" value="<? echo $liga['klan']; ?>"></td>
        <td><? echo $liga['vundne']+$liga['uafgjorte']+$liga['tabte']; ?></td>
        <td><input type="text" size="5" name="edit_vundne" value="<? echo $liga['vundne']; ?>"></td>
        <td><input type="text" size="5" name="edit_uafgjorte" value="<? echo $liga['uafgjorte']; ?>"></td>
        <td><input type="text" size="5" name="edit_tabte" value="<? echo $liga['tabte']; ?>"></td>
        <td><input type="text" size="5" name="edit_vr" value="<? echo $liga['vr']; ?>"></td>
        <td><input type="text" size="5" name="edit_tr" value="<? echo $liga['tr']; ?>"></td>
        <td><? echo $liga['result']; ?></td>
        <td><? echo $liga['point']; ?></td>
      </tr>
      <tr>
        <td><input type="submit" value="Opdater" style="height:20px;"></td>
      </tr>

</form>

<?

$i++;

    }

?>
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 18:31 #14
Egentlig ville jeg gerne have KUN én opdateringsknap, men teste lige om man kunne, hvis der var én til hver række..
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 18:32 #15
testede*
Avatar billede erikjacobsen Ekspert
28. marts 2007 - 18:33 #16
Du har ikke nogen $_GET['id']
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 18:34 #17
om jeg har id i min database?
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 18:48 #18
>php-nybegynderen

Det siger alt..

Ehmm, hvor skal jeg smide $_GET['id'] henne?
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 18:51 #19
$query = mysql_query("SELECT * FROM liga WHERE id = '" . $_GET['id'] . "' ORDER by point DESC,result DESC");
    while($liga = mysql_fetch_array($query)) {
Avatar billede erikjacobsen Ekspert
28. marts 2007 - 18:57 #20
Når du submitter fra din form har du kun $_POST-værdier og ingen af dem indeholder id-et fra rækken.
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 19:00 #21
Hvordan får jeg så indført id'et?
Avatar billede erikjacobsen Ekspert
28. marts 2007 - 19:22 #22
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 19:30 #23
Virker stadig ikke :S

<?

if ($_POST['edit_klan'] != "" && $_POST['edit_vundne'] != "" && $_POST['edit_uafgjorte'] != "" && $_POST['edit_tabte'] != "" && $_POST['edit_vr'] != "" && $_POST['edit_tr'] != "") {

$result = $_POST['edit_vr']-$_POST['edit_tr'];
$point = $_POST['edit_vundne']*2+$_POST['edit_uafgjorte'];

$query = mysql_query("UPDATE liga SET klan='" . $_POST['edit_klan'] . "',vundne='" . $_POST['edit_vundne'] . "',uafgjorte='" . $_POST['edit_uafgjorte'] . "',tabte='" . $_POST['edit_tabte'] . "',vr='" . $_POST['edit_vr'] . "',tr='" . $_POST['edit_tr'] . "',result='" . $result . "',point='" . $point . "' WHERE id='" . $_GET['id'] . "'") or die (mysql_error());

}

    $i = "1";
    $query = mysql_query("SELECT * FROM liga ORDER by point DESC,result DESC");
    while($liga = mysql_fetch_array($query)) {

?>

<form action="" method="post">

      <tr>
        <td><input type="hidden" name="id" value="<? echo $liga['id']; ?>"><? echo $i; ?></td>
        <td><input type="text" size="40" name="edit_klan" value="<? echo $liga['klan']; ?>"></td>
        <td><? echo $liga['vundne']+$liga['uafgjorte']+$liga['tabte']; ?></td>
        <td><input type="text" size="5" name="edit_vundne" value="<? echo $liga['vundne']; ?>"></td>
        <td><input type="text" size="5" name="edit_uafgjorte" value="<? echo $liga['uafgjorte']; ?>"></td>
        <td><input type="text" size="5" name="edit_tabte" value="<? echo $liga['tabte']; ?>"></td>
        <td><input type="text" size="5" name="edit_vr" value="<? echo $liga['vr']; ?>"></td>
        <td><input type="text" size="5" name="edit_tr" value="<? echo $liga['tr']; ?>"></td>
        <td><? echo $liga['result']; ?></td>
        <td><? echo $liga['point']; ?></td>
      </tr>
      <tr>
        <td><input type="submit" value="Opdater" style="height:20px;"></td>
      </tr>

</form>

<?

$i++;

    }

?>
Avatar billede erikjacobsen Ekspert
28. marts 2007 - 19:48 #24
Det er stadigvæk ikke en $_GET, en en $_POST li'som alle de andre.
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 19:54 #25
Tusind tak :)

Smid et svar
Avatar billede erikjacobsen Ekspert
28. marts 2007 - 19:58 #26
Ingen point til mig, tak.
Avatar billede php-nybegynderen Nybegynder
28. marts 2007 - 20:01 #27
Bare i orden, men tak for hjælpen.
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