Avatar billede madseksperten Nybegynder
30. marts 2015 - 15:10 Der er 5 kommentarer og
1 løsning

edit funktion i php

Hejsa.

Jeg har dette "design":

http://postimg.org/image/5j6fanenv/

Når jeg tilføjer en dato, dag, tid bliver det kastet over i databasen, og jeg får returneret det igen. Nu vil jeg så gerne have lavet en edit knap(som ses i højre side), som gør det muligt at redigere den enkelte række. Det vil sige hvis man er kommet til at vælge mandag, men skulle have valgt tirsdag istedet for, så kan man det. Men jeg er virkelig i tvivl om hvordan jeg får min SQL query tilføjet til min submitknap. Er der nogle som har et forslag til det?

<html>

<head>
    <link rel="stylesheet" type="text/css" href="css/arrangeTables.css">

</head>

<body>

    <form method="post">
        <h3>Add your worktime to database</h3><br>
            <input type="date" name="date"><br><br>
            <select name="day">
                <option value="Mandag">Mandag</option>
                <option value="Tirsdag">Tirsdag</option>
                <option value="Onsdag">Onsdag</option>
                <option value="Torsdag">Torsdag</option>
                <option value="Fredag">Fredag</option>
                <option value="Lørdag">Lørdag</option>
                <option value="Søndag">Søndag</option>
            </select>
            <input type="time" name="fromtime">
            <input type="time" name="totime">
            <input type="submit" value="submit"><br><br>

    </form>


</body>

<?php
$username = "root";
$password = "root";
$hostname = "127.0.0.1:3306";

//connection to the database
$dbhandle = mysql_connect($hostname, $username, $password)
or die("Unable to connect to MySQL");
echo "Connected to MySQL<br><br>";

//select a database to work with
$selected = mysql_select_db("danskebank",$dbhandle)
  or die("Could not select any database");

// Insert to database
$date = $_POST['date'];
$day = $_POST['day'];
$fromtime = $_POST['fromtime'];
$totime = $_POST['totime'];

$sql = "INSERT INTO addWorkTime(date, day, fromtime, totime) VALUES('$date', '$day', '$fromtime', 'totime')";

$result = mysql_query($sql);

//Return records from database
$result = mysql_query("SELECT p_id, date, day, fromtime, totime FROM addWorkTime");
?>
   
    <!-- Return from the database -->
    <h3>Return from database:</h3><br>
   
  <!-- headers -->
          <table>
          <tr>
              <th class="column0">Primary Key</th>
            <th class="column1">Date</th>
            <th class="column2">Day</th>
            <th class="column3">From</th>
            <th class="column4">To</th>
          </tr>
        </table>
         
        <!--loop through some data set you retrieve from the database -->
          <?php while($row = mysql_fetch_array($result)): ?>
          <table>
            <tr>
              <td class="resultcolumn0"><?php echo $row{'p_id'};?></td>
                <td class="resultcolumn1"><?php echo $row{'date'};?><br></td>
                <td class="resultcolumn2"><?php echo $row{'day'};?></td>
                <td class="resultcolumn3"><?php echo $row{'fromtime'};?></td>
                <td class="resultcolumn4"><?php echo $row{'totime'};?></td>
                <td><input type="button" value="Edit"></td>
          </tr>
            <?php endwhile; ?>
        </table>
</html>

Håber der er en som kunne have en ide til hvad jeg kunne gøre?

mvh Mads
Avatar billede jakobdo Ekspert
30. marts 2015 - 20:39 #1
Du kan gøre det på flere måder.
Når du trykker "edit" på en tid/dag, så kender du allerede "primary" key.
Smid den med som "key"

Jeg ville nok lave det ala:

<input type="hidden" name="row" value="ID_FRA_DEN_RÆKKE_DER_ER_KLIKKET">
Avatar billede madseksperten Nybegynder
30. marts 2015 - 22:07 #2
Hej Jacob

Mange tak for svaret. Jeg er lidt i tvivl hvordan jeg skal lave det må jeg sige. Når jeg prøver med det du foreslog, så forsvinder min edit knap selvfølgelig. Men det er bare mig der ikke forstår det :-/

Jeg prøvede lige med dette her:

<td><input type="hidden" name="addWorkTime" value="p_id"></td>

addWorkTIme er mit table. Det er ikke den jeg skal bruge? p_id er min primary key.
Avatar billede jakobdo Ekspert
30. marts 2015 - 22:12 #3
På denne side: http://postimg.org/image/5j6fanenv/
Der har du "edit" knapperne.
Hvad ønsker du der skal ske, når du trykker på disse "knapper" ?
Skal den edit "inline" ?
Eller skal den åbne en ny side og rette dine data der ?
Avatar billede madseksperten Nybegynder
30. marts 2015 - 22:22 #4
ok super, jeg prøver lige at kigge der. Jeg tænkte egentligt at det skulle være inline. De 2 knapper jeg egentligt gerne vil have var en "update" og en "delete". Dette skulle så være på inline row der redigeres.
Avatar billede madseksperten Nybegynder
17. maj 2015 - 10:34 #5
Hej Jakobdo. Undskyld det sene svar. Jeg gik lige i stå med projektet. Men vil tage det op nu her igen. Smider du et svar?

Mvh Mads
Avatar billede jakobdo Ekspert
17. maj 2015 - 13:50 #6
Svar!
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

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