# MSSQL vom Webserver oder DC erreichen



## MacBlueBass (10. September 2012)

Hallo erstmal.
Ich bin in der ganzen Sache um Server etc neu.
Deshalb bin ich auch hier 

Ich hab folgendes nun aufgebaut:
DC Server mit DNS Funktion (Windows 2008 r2)
Webserver(win2008r2), der vom DNS angesprochen werden kann (ich kann also die html auf dem Webserver über den Browser vom DC öffnen)
alles virtuelle Server

So weit so gut 

Nun hab ich noch einen SQL Server(ms sql server******), wo eine kleine Datenbank liegt 

Diese möchte ich via html bzw. php abfragen.
Der Code dazu steht, ist auch soweit richtig, aber:
Wenn ich nun die HTML öffne wird mir alles schön angezeigt
Aber wenn ich dann was abschicke und dadurch das ganze ins php geht streckt er alle viere von sich...
Die Fehlermeldung ist:
HTTP error 405.0 - method not allowed



Grund ist, denke ich, dass er den SQL Server nicht findet.... ALso der Webserver kann wohl nicht auf den MSSQL Server zugreifen und sich dort die Infos holen, welche ich haben möchte..
IP vom Webserver und vom DC ist 145.230.9.bla
IP vom MSSQL ist 145.230.2.bla.....


Wie binde ich nun den SQL dort ein?
Wie kann ich erreichen, dass die Datenbank auch ausgelesen wird?


Vielen Dank schonmal! 


MfG


----------



## sheel (10. September 2012)

Hi

das klingt eher nach einem Problem in den Webservereinstellungen.

Prüf mal sicherheitshalber, ob in der PHP-Uri im HTML-Formular ein / zuviel ist.

Sonst ist GET/POST (was verwendet wird)


----------



## MacBlueBass (10. September 2012)

Also ich sehe da kein "/" zu viel.
Was du mit dem get/post meinst, vertshe ich gerade ehrlich gesagt nicht 


Hier mal den HTML Text:

```
<html>
         <head>
                 <title>Eingabe</title>
                 <meta name="author" content="mein Name">
         </head>

<body background="_image[3].jpg" text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">

         <!-- Banner->Bildchen :) -->
         <table>
                 <tr>
                         <td><img src="_image[2].jpg" width="1227" height="136"></td>
                 </tr>
         </table>
</body>

<!-- Anmeldeteil -->

<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000" size="10">
         <h3>Entry form</h3>
         <form action="Neu.php" method="POST">
                 <p>Name:<br> Not needed at the moment! :)<!-- <input name="name" type="text" size="20" maxlength="30"></p> -->
                 <p>Password:<br> Not needed at the moment! :) <!-- <input name="passwort" type="text" size="20" maxlength="40"></p> -->


<!-- Nummer vom Lappi -->

         <h3>Client</h3>
                 <p>complete assetnumber:<br><input name="assetnr" type="text" size="20" maxlength="40"></p>


<!--Auswahldingens -->
         <h3>What do you want?</h3>
                 <input type="checkbox" name="check" value="computer">Computer<br>
                 <input type="checkbox" name="check" value="motherboard">Motherboard<br>
                 <input type="checkbox" name="check" value="system">System<br>
                 <input type="checkbox" name="check" value="server">Server<br>
                 <input type="checkbox" name="check" value="display">Display<br>
                 <input type="checkbox" name="check" value="multimedia">Multimedia<br>
                 <input type="checkbox" name="check" value="storage">Storage<br>
                 <input type="checkbox" name="check" value="network">Network<br>
                 <input type="checkbox" name="check" value="devices">Devices<br>
                 <input type="checkbox" name="check" value="software">Software<br>
                 <input type="checkbox" name="check" value="security">Security<br>
                 <input type="checkbox" name="check" value="config">Config<br>

         <input type="submit" value="Send it!"><br>
         <input type="reset" value="Reset!">

         </form>
</body>
</html>
```



Interessant ist vielleicht auch noch, dass ich vom Webserver aus den MSSQL anpingen kan!!

Danke nochmal


----------



## sheel (10. September 2012)

MacBlueBass hat gesagt.:


> Was du mit dem get/post meinst, vertshe ich gerade ehrlich gesagt nicht


Äh, sorry, der Satz  ist unvollständig 



MacBlueBass hat gesagt.:


> Interessant ist vielleicht auch noch, dass ich vom Webserver aus den MSSQL anpingen kan!!


Es liegt ziemlich sicher nicht an SQL.

Was wird denn in der PHP-Datei gemacht, außer SQL-Anweisungen?
Vllt. Umleitungen auf andere Seiten...?
Wenn die Datei nicht zu riesig ist, vllt. mal auch herzeigen.

Un versuch mal ersatzweise, eine ganz minimalistische PHP-Datei zu nehmen,
die nur ein echo "Hallo" macht oder so. Ob das beim Formularabsenden normal funktioniert.


----------



## MacBlueBass (10. September 2012)

sheel hat gesagt.:


> Äh, sorry, er Satz  ist unvollständig



Dacht ich mir iwie 


Hier die php 

```
<?php
//Variabeln gezogen
$server = "hier steht die IP";
$tab = "Item";

$name = "hier steht der Benutzername";
$pw = "hier steht das PW";
$nummer = $_POST['assetnr'];

$group = $_POST['check'];


//Auswertung

         //Server Verbindung
         $serverlink = mssql_connect("hier die IP", "mein Name", "hier mein PW")
                 or die("Verbindung zum Server fehlgeschlagen.");

         //Datenbank auswählen
         mssql_select_db('hier der Name der Datenbank', $serverlink)
                 or die("Auswahl der Datenbank fehlgeschlagen.");

         $task = "select 'IField', 'IValue' from 'Item'";
         $results = mssql_query($task, $serverlink);






         //Ausgabe
         echo '<table border="1">';
         echo '<tr><th>IField</th><th>IValue</th></tr>';
         while ($result = mssql_fetch_assoc($results))
                 {
                          echo '<tr><td>'.$result['IField'].'</td><td>'.$result['IValue'].'</td></tr>';
                 }
         echo '</table>';



         mssql_close($server_link);


?>
```





Hab nun mal ein einfaches php mit

```
<?php
echo "Hello World";
?>
```
hinter dem HTML gehangen, uuuuund...... Fehlermeldung 
"HTTP Error 405.0 - Method not allowed
The page you are locking for cannot be displayed because an invalid method (HTTP verb) is being used."

Hängt wohl mit der post Geschichte zusammen

Hab mal ne Runde gegooglet, habe daraufhin Post und Get via FastCGI installiert.

Dies brachte mich dann zu der nächsten Fehlermeldung...
"HTTP Error 500.0 - Internal Server Error
An unknown FastCGI error occured"

Dafür habe ich leider noch keine Lösung gefunden.....
Tipps? 


edit:
Habe diese Antwort gefunden.... meint ihr das Hilft?



> The error code: 0x800736b1 suggest the DLL is not found. I don't see anywhere where you've entered the environmental settings?
> 
> •Launch the registry editor: Start => Run => regedit
> •Create a new key named PHP under HKEY_LOCAL_MACHINE\SOFTWARE\
> ...



Ich fummel ungerne in der Registrierungskrams (regedit) rum.... desgalb frag ich...

Grüße

Ich habe vorhin das Problem selbst lösen können.
Man muss lediglich Visual C++ installieren... dabei aber beachten das man IMMER die 32bit Version nimmt und auch die gleiche Sprache wie auf dem Server verwendet.

Kommen wir zum nächsten Problem:

Nun wird mir eine normale FehlerSeite angezeigt, die genauso aussieht wie die, welche erscheint, wenn man keine Internetferbindung hat...


Irgendwo im Text ist dann noch folgende Beschreibung zu finden:
This error (Http 500 Internal Server Error) means that the website you are visiting had a prolem which prevented the webpage from displaying.

Es handelt sich wohl bemerkt noch immer um die einfach php mit dem ech Hallo....



Hat jemand eine schnelle Lösung parat?


----------



## sheel (11. September 2012)

Also ist das Problem noch immer da, nur schöner verpackt 
Das wär ohne VS sicher auch gegangen (was übrigens Kanonen-auf-Spatzen ist).

Das mit der Registry oben ist doch erst mal ein ganz anderer Fehler.

Was genau hast du gemacht, als du "Post und Get installiert hast"?

Geht die PHP-Seite, wenn du sie allein, ohne Formular-absenden, aufrufst?
Wenn nein, geht wenigstens eine normale HTML-Seite noch?


----------



## MacBlueBass (11. September 2012)

eine HTML aufrufen geht weiterhin

die php kann ich aber nicht mi dem IE aufrufen, dieser fragt mich dann ob ich die php-Datei öffnen oder speichern soll.....

wenn ich das HTML Formular nun abschicken möchte, kommt ebenfalls die Speichern-Frage....


des FastCGI hab ich über das Module-Mapping installiert....

Grüße


----------



## sheel (11. September 2012)

Mach mal bei dem Link folgende Abschnitte (bzw. prüf, ob es in Ordung ist):
http://php.net/manual/de/install.windows.iis7.php
Configuring IIS to process PHP requests
Using IIS Manager user interface to create a handler mapping for PHP


----------

