Avatar billede pfp Nybegynder
17. februar 2002 - 10:31 Der er 31 kommentarer og
1 løsning

Hjælp med ASP til PHP...

Hejsa,

Jeg søger en som har forstand på både ASP og PHP. Jeg laver noget kode i ASP og så skal du oversætte det til PHP. Der er tale om at du skal lave en lille mySQL database og så derefter nogle få utræk fra databasen. Jeg vil tro at der er tale om en lille halv times arbejde.

Nogen der er interesseret i at hjælpe mig?

/pfp
Avatar billede repsac Nybegynder
17. februar 2002 - 10:58 #1
Hmmm... jeg kan ikke asp, men hvis du kan forklare mig hvad der skal ske (altså kort sagt kommentere din kode grundigt) så kan jeg godt skrive det om, men ikke for 90 point - max. 60!
Avatar billede pfp Nybegynder
17. februar 2002 - 11:11 #2
Jamen det lyder jo glimrende :-)

Jeg skal have lavet en database som indeholder tabellen Artikler.

Artikler skal indeholde:
- ID (autonr.)
- Forfatter (tekst)
- Tekst (notat)
- Dato (dato, kort format)
- Link (tekst)
- Billede (tekst)
- Beskrivelse (notat)
- Overskrift (tekst)


Skriv.php
----------------------------
En alm. side med alle ovenstående felter som form-felter. Det kan jeg vel egentlig godt selv lave.


Gem.php
----------------------------
Opret forbindelse til databasen og gem resultatet af form-felterne i databasen.



Oversigt.php
----------------------------
Opret forbindelse til database og udskriv resultatet fra tabellen Artikler og sorter så den nyeste kommer øverst.

Hvis du kan hjælpe mig vil jeg blive rigtig glad. Sig til hvis der er noget der krøver mere forklaring.
Avatar billede repsac Nybegynder
17. februar 2002 - 11:16 #3
Hvor mange tal må id max. indeholde?
Hvor mange tegn må forfatter max. indeholder?
Hvor mange...

Jeg laver det nok ikke lige med det samme da jeg lige har gang i noget andet, men det tager jo ikke så lang tid :)
Avatar billede repsac Nybegynder
17. februar 2002 - 11:19 #4
hvilket datoformat?

yy-mm-dd hh:mm:ss?
Avatar billede pfp Nybegynder
17. februar 2002 - 11:19 #5
ID = uendeligt, den skal vel bare stige en hver gang der tilføjes en ny post?

Tekstfelter må være max. 50
Notatfelter må være max...tjah temmelig store, hvis der skal være plads til en artikel fx. Hvad plejer du at bruge i en sådan situation.

Det haster overhovet heller ikke, du laver det bare når du får tid/lyst :-)
Avatar billede pfp Nybegynder
17. februar 2002 - 11:20 #6
datoformat = dd-mm-yyyy
Avatar billede repsac Nybegynder
17. februar 2002 - 11:23 #7
Kan det ikke gå med yyyy-mm-dd? (det er den "rigtige" måde at gøre det på :))
Avatar billede repsac Nybegynder
17. februar 2002 - 12:06 #8
Jeg kom til at tænke på noget... datoen skal vel indsættes automatik(?)
Avatar billede repsac Nybegynder
17. februar 2002 - 12:07 #9
- altså den dato hvor det bliver skrevet(?)

... eller skal der laves et felt til det?
Avatar billede repsac Nybegynder
17. februar 2002 - 12:15 #10
Nå, nu får du det... :)

------------------functions.php------------------
<?php

$settings_mysql_server = 'localhost'; //din host
$settings_mysql_username = 'root'; //dit brugernavn til din db
$settings_mysql_password = ''; //dit kodeord til din db


function begin_mysql() {
        $con = mysql_connect("$settings_mysql_server", "$settings_mysql_username", "$settings_mysql_password") or die(mysql_error());
        mysql_select_db("artikler") or die(mysql_error());
}

function end_mysql() {
    @mysql_close(mysql_connect("$settings_mysql_server", "$settings_mysql_username", "$settings_mysql_password"));
}
?>
------------------------------------

------------------skriv_og_gem.php------------------
<?php
if (isset($form_forfatter)) {
    require("functions.php");

    $form_dato_combined = "$form_dato_aar-$form_dato_maaned-$form_dato_dag";

    begin_mysql();
    mysql_query("INSERT INTO artikler (forfatter, tekst, dato, link, billede, beskrivelse, overskrift) VALUES('$form_forfatter', '$form_tekst', NOW(), '$form_link', '$form_billede', '$form_beskrivelse', '$form_overskrift')") or die(mysql_error()); //NOW() er stattes med '$form_dato_combined' hvis brugeren selv skal indtaste det der skal gemmes som dato.
    end_mysql();

    echo "Dine data er gemt!";
} else {
?>
    Skriv noget...
    <form action="<?=$php_self?>" method="post">
    forfatter: <input type="text" name="form_forfatter">
    <br>tekst: <textarea cols="" rows="" name="form_tekst"></textarea>
<!--    <br>dato: <input type="text" name="form_dato_aar" value="yyyy">-<input type="text" name="form_dato_maaned" value="mm">-<input type="text" name="form_dato_dag" value="dd"> (eks: <?=date("Y-m-d")?>) -->
    <br>link: <input type="text" name="form_link">
    <br>billede: <input type="text" name="form_billede">
    <br>beskrivelse: <textarea cols="" rows="" name="form_beskrivelse"></textarea>
    <br>overskrift<input type="text" name="form_overskrift">
    <br><input type="submit" value="Sendt sagerne...">
    </form>
<?php
}
?>
------------------------------------

------------------oversigt.php------------------
<?php
require("functions.php");

begin_mysql();
$result = mysql_query("SELECT * FROM artikler ORDER BY id DESC");
while ($row = mysql_fetch_array($result)) {
?>
    <table>
    <tr>
        <td>id:
        </td>
        <td><?=$row['id']?>
        </td>
    </tr>
    <tr>
        <td>forfatter:
        </td>
        <td><?=$row['forfatter']?>
        </td>
    </tr>
    <tr>
        <td>tekst:
        </td>
        <td><?=$row['tekst']?>
        </td>
    </tr>
    <tr>
        <td>dato:
        </td>
        <td><?=$row['dato']?>
        </td>
    </tr>
    <tr>
        <td>link:
        </td>
        <td><?=$row['link']?>
        </td>
    </tr>
    <tr>
        <td>billede:
        </td>
        <td><?=$row['billede']?>
        </td>
    </tr>
    <tr>
        <td>overskrift:
        </td>
        <td><?=$row['overskrift']?>
        </td>
    </tr>
    </table>
<?php
}
end_mysql();
?>
------------------------------------

------------------databasestrukturen------------------
# MySQL-Front Dump 1.22
#
# Host: localhost Database: artikler
#--------------------------------------------------------
# Server version 3.23.46-max-debug


#
# Table structure for table 'artikler'
#

CREATE TABLE /*!32300 IF NOT EXISTS*/ artikler (
  id tinyint(999) unsigned NOT NULL auto_increment,
  forfatter varchar(50) DEFAULT '0' ,
  tekst text ,
  dato date ,
  link varchar(50) ,
  billede varchar(50) ,
  beskrivelse text ,
  overskrift varchar(50) ,
  PRIMARY KEY (id)
);



#
# Dumping data for table 'artikler'
#
INSERT INTO artikler VALUES("2","test forfatter","test tekst","2002-02-17","test link","test billede","test beskrivelse","test overskrift");
INSERT INTO artikler VALUES("1","asdf","asdf","2002-02-17","asdf","asdf","asdf","asdf");
------------------------------------


Så skulle der være serveret ;o)
Avatar billede repsac Nybegynder
17. februar 2002 - 12:16 #11
functions.php SKAL ligge i samme mappe som de to andre filer :) - ellers skal du rette stien der hvor der står >>require("functions.php");<< i begge filer.
Avatar billede repsac Nybegynder
17. februar 2002 - 12:18 #12
Hov... du kan godt fjerne >>DEFAULT '0'<< i databasestrukturen.
Avatar billede pfp Nybegynder
17. februar 2002 - 12:26 #13
ok tusind tak. Nu er det sådan at jeg ikke har beskæftige mig med mySQL før. Selve "databasestrukturen" skal den gemmes som en fil eller hvad? Jeg er jo vant til fysiske databaser (mdb)?
Avatar billede repsac Nybegynder
17. februar 2002 - 13:16 #14
heh... nej. Hvor skal du have sagerne kørende?

Hvis det er på nette det skal køre har din host øjensynligt phpMyAdmin kørende. Hvis du logger ind og vælger din database vil du kunne se et textarea hvor du kan skrive queries. Der poster du al databasestrukturen og vupti, så har du uploadet databasen :)

Du kan også bruge mysql-front (kan downloades på www.download.com - søg på 'mysql'). Det er et program der giver et bedre overblik efter min mening, men det er en smagssag.
Avatar billede repsac Nybegynder
17. februar 2002 - 13:17 #15
Undskyld den lange svartid, men jeg måtte lige kyle en omgang føde indebors :)
Avatar billede repsac Nybegynder
17. februar 2002 - 13:17 #16
... og stave kan jeg heller ikke... indenbors :)
Avatar billede cotus Nybegynder
17. februar 2002 - 14:33 #17
Jeg har også ledt efter det samme... så jeg vil lige spørge om noget: Skal man så copy/paste den der databasestruktur-afsnit, ind i min editor, og så gemme den som... hvad?

/cotus
Avatar billede repsac Nybegynder
17. februar 2002 - 14:55 #18
=>cotus: læs min kommentar igen - du har ikke forstået hvad jeg skrev (tror jeg).

Jeg tror jeg skriver en tutorial i hvordan man flytter data fra én mysql-db til en anden, men det bliver ikke nu.
Avatar billede cotus Nybegynder
17. februar 2002 - 14:59 #19
Dvs., at hvis jeg tester mine ting på Friserverplads, skal jeg:

1)- Logge ind i deres MySQL (phpMyAdmin 2.2.2)2)
2)- Vælge mit brugernavn ude i menuen
3)- Og hvordan skal jeg så udfylde det? Skal jeg bare sætte alt det du skrev, ind i "Kør SQL forspørgsel(er) på database brugernavn"? Eller "Oprette ny tabel i database brugernavn"?

/cotus
Avatar billede cotus Nybegynder
17. februar 2002 - 15:00 #20
(Du må undskylde, hvis jeg spørger "lidt" meget, men jeg er n00b til PHP - kan kun ASP! :-))

/cotus
Avatar billede repsac Nybegynder
17. februar 2002 - 15:07 #21
Du logger ikke ind i mysql, men i phpMyAdmin som giver dig adgang til din mysqldatabase og overblik over den. Sådan skal du i hvert fald opfatte det.

du skal indsætte det i "kør SQL..."!

det er helt i orden du spørger. Og endnu mere i orden når du går fra ASP til PHP ;o)
Avatar billede repsac Nybegynder
17. februar 2002 - 17:12 #22
måske jeg skulle poste et svar... :)
Avatar billede pfp Nybegynder
17. februar 2002 - 21:28 #23
hej repsac

jeg tror ikke jeg har adgang til phpMyAdmin. Jeg fik at vide fra mit web-hotel at jeg skulle logge ind med telnet og det har jeg så gjort. Indtil videre har jeg:
- logget ind
- startet mySQL
- fået sat password på databasen

Kan du guide mig til, hvor jeg skal sætte databasestruktur ind? Har du evt. ICQ?

Mvh Peter
Avatar billede repsac Nybegynder
17. februar 2002 - 22:18 #24
Hej Peter!

Nej, jeg har ikke ICQ, men jeg tror godt jeg kan hjælpe dig alligevel :)

Når du har fået din MySQL-prompt op gør du følgende:

mysql> USE databasenavn
Database changed
mysql> CREATE TABLE /*!32300 IF NOT EXISTS*/ artikler (
    ->  id tinyint(255) unsigned NOT NULL auto_increment,
    ->  forfatter varchar(50) DEFAULT '0' ,
    ->  tekst text ,
    ->  dato date ,
    ->  link varchar(50) ,
    ->  billede varchar(50) ,
    ->  beskrivelse text ,
    ->  overskrift varchar(50) ,
    ->  PRIMARY KEY (id)
    -> );
Query OK, 0 rows affected (0.01 sec)

mysql> INSERT INTO artikler VALUES("2","test forfatter","test tekst","2002-02-17","test link","test billede","test beskrivelse","test overskrift");
Query OK, 1 row affected (0.04 sec)

mysql> INSERT INTO artikler VALUES("1","asdf","asdf","2002-02-17","asdf","asdf","asdf","asdf");
Query OK, 1 row affected (0.02 sec)

Sådan så det ud da jeg lavede det, men hvis du får nogle fejl så spørg endelig :)

Har du downloadet mysql-front, for det er meget nemmere at benytte end den ellers gode gamle tekstform :)

I en mysql-prompt kan du også lave queries ligesom i php:

mysql> SELECT forfatter FROM artikler;
+----------------+
| forfatter      |
+----------------+
| test forfatter |
| asdf          |
+----------------+
2 rows in set (0.46 sec)

... men med mysql-front som kan downloades på www.download.com (søg på mysql, så er den vist nr. 3 så vidt jeg husker) er det meget mere overskueligt + du skal ikke flæske rundt i mysql-kommandoer :)
Avatar billede pfp Nybegynder
18. februar 2002 - 09:55 #25
Kan det passe at jeg kan få adgang hverken med telnet eller mysql front, fordi jeg kører igennem en firewall?
Avatar billede repsac Nybegynder
18. februar 2002 - 15:17 #26
Tjaehh... hvis du ikke har hul igennem, eller ikke må connecte ud via en given port...

Hvor er du hostet?

Du kunne jo evt. have phpmyadmin liggende på din personlige webside, blot gemt og password-beskyttet så kun du kan styre din db :)
Avatar billede pfp Nybegynder
18. februar 2002 - 17:38 #27
Hej repsac

Har du evt. en e-mail?

Jeg er nu kommet hjem til mig selv og får at vide at min IP ikke har tilladelse til at connecte. Jeg ved ikke om det er fordi jeg bruger de forkerte oplysninger til at tilslutte mig med? Jeg har fået en host, et brugernavn og en kode fra mit hotel er det disse oplysninger jeg skal bruge? For der står også noget om en port og root? Så er det i stedet root jeg skal bruge med det password jeg tildelte i går?

Pyha sikke en masse spørgsmål..er virkelig glad for at du gider hjælpe mig.

Peter
Avatar billede pfp Nybegynder
18. februar 2002 - 17:39 #28
prøver lige at uploade phpmyadmin om lidt, kan den også hentes på download.com?
Avatar billede pfp Nybegynder
18. februar 2002 - 18:00 #29
Nu har jeg uploadet phpmyadmin, men hvis jeg går ind i den skriver den:

Fejl
MySQL returnerede:
Cannot connect: invalid settings.
Avatar billede repsac Nybegynder
18. februar 2002 - 21:56 #30
Det er svært at svare på dine spørgsmål idet jeg intet kender til systemerne omkring dig. Det du kan være bedst tjent med er at du selv kontakter to parter; 1) din udbyder og 2) administratoren for det netværk du sidder på og har netadgang igennem.

Du spørger din udbyder om hvordan du kan komme i kontakt med din mysql-database.
Din lokale administrator spørger du om han kan opfylde udbyderens "krav".
Prøv at finde en løsning.

Hvis du ikke umiddelbart kan finde en løsning kan jeg kun anbefale dig at fremlægge sagen for din udbyder.

En mulig løsning kunne være at uploade phpMyAdmin på din egen account, men det kræver du kender de informationer du skal bruge for at sætte phpMyAdmin op - dem du får når du spørger din udbyder første gang hvordan du kan komme i kontakt med din mysql-database.

Jeg kender ikke til phpMyAdmins fejlmeddelelser, så jeg ved simpelthen ikke hvad der menes med den, og det ville være meningsløst at jeg prøver mig frem for at finde ud af hvordan man forårsager fejlen (lede åndeløst i koden).

Prøv min fremgangsmåde og så vil jeg gerne hjælpe dig ind i mellem når der sker lidt nyt - mail mig evt. på casper@thomsen.as

Forvent ikke at jeg svarer med det samme da jeg kun er en sølle gymnasieelev der nok kan fordrive tiden ;)

/Casper
Avatar billede pfp Nybegynder
18. februar 2002 - 22:40 #31
OK det vil jeg gøre. Du har i hvertfald fortjent dine point.
Avatar billede repsac Nybegynder
19. februar 2002 - 00:04 #32
Du skriver bare til mig hvis du støder i problemer :)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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