Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

snmpwalk() -->array auflösen --> database

Empfohlene Antworten

Veröffentlicht

Hallo Leute,

mein Problem klingt folgendermaßen

ich lesen mit snmpwalk() teile aus meinem Switch aus.

Diese sollen anschließend in eine Datenbank reingekloppt werden.

Das Problem ist nun das ich das array was durch snmpwalk bekomme nciht aufgelost kriege und wenn ich es eintrage in meine mysql datenbank steht nur ein "array" in dem Feld.

Ich bin bisher soweit gekommen das mein Code so ausschaut:

$b = implode(" ", $a);
parse_str($;

for ($i=0; $i < count($; $i++)
{
echo $b[$i]." <br>";
}

$eintrag = "INSERT INTO project
(Kommentar)
VALUES
('$b')";[/PHP]

Der Code ist jetzt iwi zusammengebastelt aus sachen die ich im Netz gefunden habe.

Ich hab schon sämtliche Sachen probiert wie explode(), implode()... und was man noch so alles findet bei google wenn man "array teilen" eingibt.

Bitte helft mir

lg

hab gemacht

Ergebniss:

string(221) ""HP J4902A ProCurve Switch 6108, revision H.07.90, ROM H.07.40 (/sw/code/build/fish(ff03))" OID: .iso.3.6.1.4.1.11.2.3.7.11.30 Timeticks: (18494893) 2 days, 3:22:28.93 "praktikant" "HP ProCurve Switch 6108" "work_room" 74" "

an welche stelle hast du das var_dump gesetz?

warum machst du ein parse_str auf die variable, weist du was diese funktion tut?

fuer was hast du da ne schleife?

du solltest dir evtl die funktionen die du benutz auch mal auf php.net durchlesen, damit du weist was diese machen

dann weist du auch wo dein fehler liegt

Ted

<?php
error_reporting(E_ALL);
include 'db_connect.php';
include 'community.php';

//$b = explode(" ", $a);
parse_str($a);
var_dump($a);
for ($i=0; $i < count($a); $i++)
{
echo $a[$i]." <br>";
}

$eintrag = "INSERT INTO project
(Kommentar)
VALUES
('$a')";

$eintragen = mysql_query($eintrag);

if($eintragen == true)
{
echo "Eintrag war erfolgreich";
}
else
{
echo "Fehler beim Speichern";
echo mysql_error();
}
?>[/PHP]

so schaut mein Code jetzt aus

das ganze was da ist hab ich mir ausm Netz zusammen gesucht also den oberen Teil das mit dem Datenbank eintragen... das ist nur ausprobieren

deswegen stehen da soviele verschiedene Sachen drinne...

wie gesagt das parse_str hab ich gefunden als mein chef mir ausgeholfen hat

von wegen dein Problem ist das übliche String problem... parse das doch aml dann hab cih das gefunden und benutzt

mit der Schleife wollte ich erreichen das ich jeden einzellnen bestandteil des arrays der dann aus dem String aufgelöst wurde einzeln in jeweils eine eigene zeile in die Datenbank schreibe...

ich hoffe du kannst den Code einigermaßen verstehen weil cih keine kommentare oder sonstiges habe. Die include datein sollten für sich sprechen wenn ich sie trotzdem posten soll nochmal bescheid sagen.

Ich will kein fertiges Script haben würde mein Fehler gerne selber ausarbeiten. Sonst lern ich ja nie was.

AUSGABE IM BROWSER:

Notice: Array to string conversion in C:\xampp\htdocs\projekt\project.php on line 7

array(7) { [0]=> string(91) ""HP J4902A ProCurve Switch 6108, revision H.07.90, ROM H.07.40 (/sw/code/build/fish(ff03))"" [1]=> string(34) "OID: .iso.3.6.1.4.1.11.2.3.7.11.30" [2]=> string(40) "Timeticks: (19350186) 2 days, 5:45:01.86" [3]=> string(12) ""praktikant"" [4]=> string(25) ""HP ProCurve Switch 6108"" [5]=> string(11) ""work_room"" [6]=> string(2) "74" } "HP J4902A ProCurve Switch 6108, revision H.07.90, ROM H.07.40 (/sw/code/build/fish(ff03))"

OID: .iso.3.6.1.4.1.11.2.3.7.11.30

Timeticks: (19350186) 2 days, 5:45:01.86

"praktikant"

"HP ProCurve Switch 6108"

"work_room"

74

Eintrag war erfolgreich

Bearbeitet von .tobias

mit der Schleife wollte ich erreichen das ich jeden einzellnen bestandteil des arrays der dann aus dem String aufgelöst wurde einzeln in jeweils eine eigene zeile in die Datenbank schreibe...

und warum machst du das dann nicht? du musst das SQL natuerlich auch in der schleife vollfuehren

Ted

okay ich glaube hatte einfach nen denkfehler ich muss quasi den sql teil insert und so in die schleife einbauen sonst wird das array zwar durchgegangen aber das insert danach spielt dann gar nicht mehr damit zusammen ich werd es morgen testen wenn cih wieder auf arbeit bin danke soweit =)

also alles wunderbar läuft jetzt =)

<?php
error_reporting(E_ALL);
include 'db_connect.php';
include 'community.php';

for ($i=0; $i < count($a); $i++)
{
echo $i;
echo $a[$i]." <br>";
$eintrag = "INSERT INTO project
(Kommentar)
VALUES
('$a[$i]')";
$eintragen = mysql_query($eintrag);
}

if($eintragen == true)
{
echo "Eintrag war erfolgreich";
}
else
{
echo "Fehler beim Speichern";
echo mysql_error();
}
?>[/PHP]

danke für die Hilfe kann geclosed werden =)

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.